Network Working Group B. Moore Request for Comments: 3670 IBM Corporation Category: Standards Track D. Durham Intel J. Strassner INTELLIDEN, Inc. A. Westerinen Cisco Systems W. Weiss Ellacoya January 2004
Network Working Group B. Moore Request for Comments: 3670 IBM Corporation Category: Standards Track D. Durham Intel J. Strassner INTELLIDEN, Inc. A. Westerinen Cisco Systems W. Weiss Ellacoya January 2004
Information Model for Describing Network Device QoS Datapath Mechanisms
描述网络设备QoS数据路径机制的信息模型
Status of this Memo
本备忘录的状况
This document specifies an Internet standards track protocol for the Internet community, and requests discussion and suggestions for improvements. Please refer to the current edition of the "Internet Official Protocol Standards" (STD 1) for the standardization state and status of this protocol. Distribution of this memo is unlimited.
本文件规定了互联网社区的互联网标准跟踪协议,并要求进行讨论和提出改进建议。有关本协议的标准化状态和状态,请参考当前版本的“互联网官方协议标准”(STD 1)。本备忘录的分发不受限制。
Copyright Notice
版权公告
Copyright (C) The Internet Society (2004). All Rights Reserved.
版权所有(C)互联网协会(2004年)。版权所有。
Abstract
摘要
The purpose of this document is to define an information model to describe the quality of service (QoS) mechanisms inherent in different network devices, including hosts. Broadly speaking, these mechanisms describe the properties common to selecting and conditioning traffic through the forwarding path (datapath) of a network device. This selection and conditioning of traffic in the datapath spans both major QoS architectures: Differentiated Services and Integrated Services.
本文档旨在定义一个信息模型,以描述不同网络设备(包括主机)固有的服务质量(QoS)机制。广义地说,这些机制描述了通过网络设备的转发路径(数据路径)选择和调节流量的共同属性。数据路径中流量的选择和调节跨越了两种主要的QoS体系结构:区分服务和集成服务。
This document should be used with the QoS Policy Information Model (QPIM) to model how policies can be defined to manage and configure the QoS mechanisms (i.e., the classification, marking, metering, dropping, queuing, and scheduling functionality) of devices. Together, these two documents describe how to write QoS policy rules to configure and manage the QoS mechanisms present in the datapaths of devices.
本文档应与QoS策略信息模型(QPIM)一起使用,以建模如何定义策略来管理和配置设备的QoS机制(即分类、标记、计量、丢弃、排队和调度功能)。这两个文档一起描述了如何编写QoS策略规则来配置和管理设备数据路径中的QoS机制。
This document, as well as QPIM, are information models. That is, they represent information independent of a binding to a specific type of repository.
本文档以及QPIM都是信息模型。也就是说,它们表示独立于绑定到特定类型存储库的信息。
Table of Contents
目录
1. Introduction . . . . . . . . . . . . . . . . . . . . . . . . . 4 1.1. Policy Management Conceptual Model . . . . . . . . . . . 6 1.2. Purpose and Relation to Other Policy Work. . . . . . . . 7 1.3. Typical Examples of Policy Usage . . . . . . . . . . . . 7 2. Approach . . . . . . . . . . . . . . . . . . . . . . . . . . . 8 2.1. Common Needs Of DiffServ and IntServ . . . . . . . . . . 8 2.2. Specific Needs Of DiffServ . . . . . . . . . . . . . . . 9 2.3. Specific Needs Of IntServ. . . . . . . . . . . . . . . . 9 3. Methodology. . . . . . . . . . . . . . . . . . . . . . . . . . 10 3.1. Level of Abstraction for Expressing QoS Policies . . . . 10 3.2. Specifying Policy Parameters . . . . . . . . . . . . . . 11 3.3. Specifying Policy Services . . . . . . . . . . . . . . . 12 3.4. Level of Abstraction for Defining QoS Attributes and Classes. . . . . . . . . . . . . . . . . . . . . . . . . 13 3.5. Characterization of QoS Properties . . . . . . . . . . . 14 3.6. QoS Information Model Derivation . . . . . . . . . . . . 15 3.7. Attribute Representation . . . . . . . . . . . . . . . . 16 3.8. Mental Model . . . . . . . . . . . . . . . . . . . . . . 17 3.8.1. The QoSService Class . . . . . . . . . . . . . . 17 3.8.2. The ConditioningService Class. . . . . . . . . . 18 3.8.3. Preserving QoS Information from Ingress to Egress . . . . . . . . . . . . . . . . . . . . . 19 3.9. Classifiers, FilterLists, and Filter Entries . . . . . . 21 3.10. Modeling of Droppers . . . . . . . . . . . . . . . . . . 23 3.10.1. Configuring Head and Tail Droppers . . . . . . . 23 3.10.2. Configuring RED Droppers . . . . . . . . . . . . 24 3.11. Modeling of Queues and Schedulers. . . . . . . . . . . . 25 3.11.1. Simple Hierarchical Scheduler. . . . . . . . . . 25 3.11.2. Complex Hierarchical Scheduler . . . . . . . . . 27 3.11.3. Excess Capacity Scheduler. . . . . . . . . . . . 29 3.11.4. Hierarchical CBQ Scheduler . . . . . . . . . . . 31 4. The Class Hierarchy. . . . . . . . . . . . . . . . . . . . . . 33 4.1. Associations and Aggregations. . . . . . . . . . . . . . 33 4.2. The Structure of the Class Hierarchies . . . . . . . . . 34 4.3. Class Definitions. . . . . . . . . . . . . . . . . . . . 38 4.3.1. The Abstract Class ManagedElement. . . . . . . . 38 4.3.2. The Abstract Class ManagedSystemElement. . . . . 39 4.3.3. The Abstract Class LogicalElement. . . . . . . . 39 4.3.4. The Abstract Class Service . . . . . . . . . . . 39 4.3.5. The Class ConditioningService. . . . . . . . . . 39 4.3.6. The Class ClassifierService. . . . . . . . . . . 40 4.3.7. The Class ClassifierElement. . . . . . . . . . . 41
1. Introduction . . . . . . . . . . . . . . . . . . . . . . . . . 4 1.1. Policy Management Conceptual Model . . . . . . . . . . . 6 1.2. Purpose and Relation to Other Policy Work. . . . . . . . 7 1.3. Typical Examples of Policy Usage . . . . . . . . . . . . 7 2. Approach . . . . . . . . . . . . . . . . . . . . . . . . . . . 8 2.1. Common Needs Of DiffServ and IntServ . . . . . . . . . . 8 2.2. Specific Needs Of DiffServ . . . . . . . . . . . . . . . 9 2.3. Specific Needs Of IntServ. . . . . . . . . . . . . . . . 9 3. Methodology. . . . . . . . . . . . . . . . . . . . . . . . . . 10 3.1. Level of Abstraction for Expressing QoS Policies . . . . 10 3.2. Specifying Policy Parameters . . . . . . . . . . . . . . 11 3.3. Specifying Policy Services . . . . . . . . . . . . . . . 12 3.4. Level of Abstraction for Defining QoS Attributes and Classes. . . . . . . . . . . . . . . . . . . . . . . . . 13 3.5. Characterization of QoS Properties . . . . . . . . . . . 14 3.6. QoS Information Model Derivation . . . . . . . . . . . . 15 3.7. Attribute Representation . . . . . . . . . . . . . . . . 16 3.8. Mental Model . . . . . . . . . . . . . . . . . . . . . . 17 3.8.1. The QoSService Class . . . . . . . . . . . . . . 17 3.8.2. The ConditioningService Class. . . . . . . . . . 18 3.8.3. Preserving QoS Information from Ingress to Egress . . . . . . . . . . . . . . . . . . . . . 19 3.9. Classifiers, FilterLists, and Filter Entries . . . . . . 21 3.10. Modeling of Droppers . . . . . . . . . . . . . . . . . . 23 3.10.1. Configuring Head and Tail Droppers . . . . . . . 23 3.10.2. Configuring RED Droppers . . . . . . . . . . . . 24 3.11. Modeling of Queues and Schedulers. . . . . . . . . . . . 25 3.11.1. Simple Hierarchical Scheduler. . . . . . . . . . 25 3.11.2. Complex Hierarchical Scheduler . . . . . . . . . 27 3.11.3. Excess Capacity Scheduler. . . . . . . . . . . . 29 3.11.4. Hierarchical CBQ Scheduler . . . . . . . . . . . 31 4. The Class Hierarchy. . . . . . . . . . . . . . . . . . . . . . 33 4.1. Associations and Aggregations. . . . . . . . . . . . . . 33 4.2. The Structure of the Class Hierarchies . . . . . . . . . 34 4.3. Class Definitions. . . . . . . . . . . . . . . . . . . . 38 4.3.1. The Abstract Class ManagedElement. . . . . . . . 38 4.3.2. The Abstract Class ManagedSystemElement. . . . . 39 4.3.3. The Abstract Class LogicalElement. . . . . . . . 39 4.3.4. The Abstract Class Service . . . . . . . . . . . 39 4.3.5. The Class ConditioningService. . . . . . . . . . 39 4.3.6. The Class ClassifierService. . . . . . . . . . . 40 4.3.7. The Class ClassifierElement. . . . . . . . . . . 41
4.3.8. The Class MeterService . . . . . . . . . . . . . 42 4.3.9. The Class AverageRateMeterService. . . . . . . . 44 4.3.10. The Class EWMAMeterService . . . . . . . . . . . 44 4.3.11. The Class TokenBucketMeterService. . . . . . . . 46 4.3.12. The Class MarkerService. . . . . . . . . . . . . 47 4.3.13. The Class PreambleMarkerService. . . . . . . . . 47 4.3.14. The Class ToSMarkerService . . . . . . . . . . . 48 4.3.15. The Class DSCPMarkerService. . . . . . . . . . . 49 4.3.16. The Class 8021QMarkerService . . . . . . . . . . 49 4.3.17. The Class DropperService . . . . . . . . . . . . 50 4.3.18. The Class HeadTailDropperService . . . . . . . . 52 4.3.19. The Class REDDropperService. . . . . . . . . . . 52 4.3.20. The Class QueuingService . . . . . . . . . . . . 54 4.3.21. The Class PacketSchedulingService. . . . . . . . 55 4.3.22. The Class NonWorkConservingSchedulingService . . 56 4.3.23. The Class QoSService . . . . . . . . . . . . . . 57 4.3.24. The Class DiffServService. . . . . . . . . . . . 58 4.3.25. The Class AFService. . . . . . . . . . . . . . . 59 4.3.26. The Class FlowService. . . . . . . . . . . . . . 60 4.3.27. The Class DropThresholdCalculationService. . . . 60 4.3.28. The Abstract Class FilterEntryBase . . . . . . . 61 4.3.29. The Class IPHeaderFilter . . . . . . . . . . . . 62 4.3.30. The Class 8021Filter . . . . . . . . . . . . . . 62 4.3.31. The Class PreambleFilter . . . . . . . . . . . . 62 4.3.32. The Class FilterList . . . . . . . . . . . . . . 63 4.3.33. The Abstract Class ServiceAccessPoint. . . . . . 63 4.3.34. The Class ProtocolEndpoint . . . . . . . . . . . 63 4.3.35. The Abstract Class Collection. . . . . . . . . . 65 4.3.36. The Abstract Class CollectionOfMSEs. . . . . . . 65 4.3.37. The Class BufferPool . . . . . . . . . . . . . . 65 4.3.38. The Abstract Class SchedulingElement . . . . . . 65 4.3.39. The Class AllocationSchedulingElement. . . . . . 66 4.3.40. The Class WRRSchedulingElement . . . . . . . . . 67 4.3.41. The Class PrioritySchedulingElement. . . . . . . 69 4.3.42. The Class BoundedPrioritySchedulingElement . . . 70 4.4. Association Definitions. . . . . . . . . . . . . . . . . 70 4.4.1. The Abstract Association Dependency. . . . . . . 71 4.4.2. The Association ServiceSAPDependency . . . . . . 71 4.4.3. The Association IngressConditioningServiceOnEndpoint . . . . . . 71 4.4.4. The Association EgressConditioningServiceOnEndpoint. . . . . . . 72 4.4.5. The Association HeadTailDropQueueBinding . . . . 72 4.4.6. The Association CalculationBasedOnQueue. . . . . 73 4.4.7. The Association ProvidesServiceToElement . . . . 74 4.4.8. The Association ServiceServiceDependency . . . . 74 4.4.9. The Association CalculationServiceForDropper . . 75 4.4.10. The Association QueueAllocation. . . . . . . . . 75
4.3.8. The Class MeterService . . . . . . . . . . . . . 42 4.3.9. The Class AverageRateMeterService. . . . . . . . 44 4.3.10. The Class EWMAMeterService . . . . . . . . . . . 44 4.3.11. The Class TokenBucketMeterService. . . . . . . . 46 4.3.12. The Class MarkerService. . . . . . . . . . . . . 47 4.3.13. The Class PreambleMarkerService. . . . . . . . . 47 4.3.14. The Class ToSMarkerService . . . . . . . . . . . 48 4.3.15. The Class DSCPMarkerService. . . . . . . . . . . 49 4.3.16. The Class 8021QMarkerService . . . . . . . . . . 49 4.3.17. The Class DropperService . . . . . . . . . . . . 50 4.3.18. The Class HeadTailDropperService . . . . . . . . 52 4.3.19. The Class REDDropperService. . . . . . . . . . . 52 4.3.20. The Class QueuingService . . . . . . . . . . . . 54 4.3.21. The Class PacketSchedulingService. . . . . . . . 55 4.3.22. The Class NonWorkConservingSchedulingService . . 56 4.3.23. The Class QoSService . . . . . . . . . . . . . . 57 4.3.24. The Class DiffServService. . . . . . . . . . . . 58 4.3.25. The Class AFService. . . . . . . . . . . . . . . 59 4.3.26. The Class FlowService. . . . . . . . . . . . . . 60 4.3.27. The Class DropThresholdCalculationService. . . . 60 4.3.28. The Abstract Class FilterEntryBase . . . . . . . 61 4.3.29. The Class IPHeaderFilter . . . . . . . . . . . . 62 4.3.30. The Class 8021Filter . . . . . . . . . . . . . . 62 4.3.31. The Class PreambleFilter . . . . . . . . . . . . 62 4.3.32. The Class FilterList . . . . . . . . . . . . . . 63 4.3.33. The Abstract Class ServiceAccessPoint. . . . . . 63 4.3.34. The Class ProtocolEndpoint . . . . . . . . . . . 63 4.3.35. The Abstract Class Collection. . . . . . . . . . 65 4.3.36. The Abstract Class CollectionOfMSEs. . . . . . . 65 4.3.37. The Class BufferPool . . . . . . . . . . . . . . 65 4.3.38. The Abstract Class SchedulingElement . . . . . . 65 4.3.39. The Class AllocationSchedulingElement. . . . . . 66 4.3.40. The Class WRRSchedulingElement . . . . . . . . . 67 4.3.41. The Class PrioritySchedulingElement. . . . . . . 69 4.3.42. The Class BoundedPrioritySchedulingElement . . . 70 4.4. Association Definitions. . . . . . . . . . . . . . . . . 70 4.4.1. The Abstract Association Dependency. . . . . . . 71 4.4.2. The Association ServiceSAPDependency . . . . . . 71 4.4.3. The Association IngressConditioningServiceOnEndpoint . . . . . . 71 4.4.4. The Association EgressConditioningServiceOnEndpoint. . . . . . . 72 4.4.5. The Association HeadTailDropQueueBinding . . . . 72 4.4.6. The Association CalculationBasedOnQueue. . . . . 73 4.4.7. The Association ProvidesServiceToElement . . . . 74 4.4.8. The Association ServiceServiceDependency . . . . 74 4.4.9. The Association CalculationServiceForDropper . . 75 4.4.10. The Association QueueAllocation. . . . . . . . . 75
4.4.11. The Association ClassifierElementUsesFilterList. 76 4.4.12. The Association AFRelatedServices. . . . . . . . 77 4.4.13. The Association NextService. . . . . . . . . . . 78 4.4.14. The Association NextServiceAfterClassifierElement. . . . . . . . 79 4.4.15. The Association NextScheduler. . . . . . . . . . 80 4.4.16. The Association FailNextScheduler. . . . . . . . 81 4.4.17. The Association NextServiceAfterMeter. . . . . . 82 4.4.18. The Association QueueToSchedule. . . . . . . . . 83 4.4.19. The Association SchedulingServiceToSchedule. . . 84 4.4.20. The Aggregation MemberOfCollection . . . . . . . 85 4.4.21. The Aggregation CollectedBufferPool. . . . . . . 85 4.4.22. The Abstract Aggregation Component . . . . . . . 86 4.4.23. The Aggregation ServiceComponent . . . . . . . . 86 4.4.24. The Aggregation QoSSubService. . . . . . . . . . 86 4.4.25. The Aggregation QoSConditioningSubService. . . . 87 4.4.26. The Aggregation ClassifierElementInClassifierService . . . . . . 88 4.4.27. The Aggregation EntriesInFilterList. . . . . . . 89 4.4.28. The Aggregation ElementInSchedulingService . . . 90 5. Intellectual Property Statement. . . . . . . . . . . . . . . . 91 6. Acknowledgements . . . . . . . . . . . . . . . . . . . . . . . 91 7. Security Considerations. . . . . . . . . . . . . . . . . . . . 91 8. References . . . . . . . . . . . . . . . . . . . . . . . . . . 92 8.1. Normative References. . . . . . . . . . . . . . . . . . . 92 8.2. Informative References . . . . . . . . . . . . . . . . . 92 9. Appendix A: Naming Instances in a Native CIM Implementation . 94 9.1. Naming Instances of the Classes Derived from Service. . . 94 9.2. Naming Instances of Subclasses of FilterEntryBase . . . . 94 9.3. Naming Instances of ProtocolEndpoint. . . . . . . . . . . 94 9.4. Naming Instances of BufferPool. . . . . . . . . . . . . . 95 9.4.1. The Property CollectionID. . . . . . . . . . . . 95 9.4.2. The Property CreationClassName . . . . . . . . . 95 9.5. Naming Instances of SchedulingElement . . . . . . . . . . 95 10. Authors' Addresses . . . . . . . . . . . . . . . . . . . . . . 96 11. Full Copyright Statement . . . . . . . . . . . . . . . . . . . 97
4.4.11. The Association ClassifierElementUsesFilterList. 76 4.4.12. The Association AFRelatedServices. . . . . . . . 77 4.4.13. The Association NextService. . . . . . . . . . . 78 4.4.14. The Association NextServiceAfterClassifierElement. . . . . . . . 79 4.4.15. The Association NextScheduler. . . . . . . . . . 80 4.4.16. The Association FailNextScheduler. . . . . . . . 81 4.4.17. The Association NextServiceAfterMeter. . . . . . 82 4.4.18. The Association QueueToSchedule. . . . . . . . . 83 4.4.19. The Association SchedulingServiceToSchedule. . . 84 4.4.20. The Aggregation MemberOfCollection . . . . . . . 85 4.4.21. The Aggregation CollectedBufferPool. . . . . . . 85 4.4.22. The Abstract Aggregation Component . . . . . . . 86 4.4.23. The Aggregation ServiceComponent . . . . . . . . 86 4.4.24. The Aggregation QoSSubService. . . . . . . . . . 86 4.4.25. The Aggregation QoSConditioningSubService. . . . 87 4.4.26. The Aggregation ClassifierElementInClassifierService . . . . . . 88 4.4.27. The Aggregation EntriesInFilterList. . . . . . . 89 4.4.28. The Aggregation ElementInSchedulingService . . . 90 5. Intellectual Property Statement. . . . . . . . . . . . . . . . 91 6. Acknowledgements . . . . . . . . . . . . . . . . . . . . . . . 91 7. Security Considerations. . . . . . . . . . . . . . . . . . . . 91 8. References . . . . . . . . . . . . . . . . . . . . . . . . . . 92 8.1. Normative References. . . . . . . . . . . . . . . . . . . 92 8.2. Informative References . . . . . . . . . . . . . . . . . 92 9. Appendix A: Naming Instances in a Native CIM Implementation . 94 9.1. Naming Instances of the Classes Derived from Service. . . 94 9.2. Naming Instances of Subclasses of FilterEntryBase . . . . 94 9.3. Naming Instances of ProtocolEndpoint. . . . . . . . . . . 94 9.4. Naming Instances of BufferPool. . . . . . . . . . . . . . 95 9.4.1. The Property CollectionID. . . . . . . . . . . . 95 9.4.2. The Property CreationClassName . . . . . . . . . 95 9.5. Naming Instances of SchedulingElement . . . . . . . . . . 95 10. Authors' Addresses . . . . . . . . . . . . . . . . . . . . . . 96 11. Full Copyright Statement . . . . . . . . . . . . . . . . . . . 97
The purpose of this document is to define an information model to describe the quality of service (QoS) mechanisms inherent in different network devices, including hosts. Broadly speaking, these mechanisms describe the attributes common to selecting and conditioning traffic through the forwarding path (datapath) of a network device. This selection and conditioning of traffic in the datapath spans both major QoS architectures: Differentiated Services (see [R2475]) and Integrated Services (see [R1633]).
本文档旨在定义一个信息模型,以描述不同网络设备(包括主机)固有的服务质量(QoS)机制。广义地说,这些机制描述了通过网络设备的转发路径(数据路径)选择和调节流量的共同属性。数据路径中流量的选择和调节跨越了两个主要的QoS架构:区分服务(参见[R2475])和集成服务(参见[R1633])。
This document is intended to be used with the QoS Policy Information Model [QPIM] to model how policies can be defined to manage and configure the QoS mechanisms (i.e., the classification, marking, metering, dropping, queuing, and scheduling functionality) of devices. Together, these two documents describe how to write QoS policy rules to configure and manage the QoS mechanisms present in the datapaths of devices.
本文档旨在与QoS策略信息模型[QPIM]一起使用,以建模如何定义策略来管理和配置设备的QoS机制(即分类、标记、计量、丢弃、排队和调度功能)。这两个文档一起描述了如何编写QoS策略规则来配置和管理设备数据路径中的QoS机制。
This document, as well as [QPIM], are information models. That is, they represent information independent of a binding to a specific type of repository. A separate document could be written to provide a mapping of the data contained in this document to a form suitable for implementation in a directory that uses (L)DAP as its access protocol. Similarly, a document could be written to provide a mapping of the data in [QPIM] to a directory. Together, these four documents (information models and directory schema mappings) would then describe how to write QoS policy rules that can be used to store information in directories to configure device QoS mechanisms.
本文档和[QPIM]都是信息模型。也就是说,它们表示独立于绑定到特定类型存储库的信息。可以编写一个单独的文档,将本文档中包含的数据映射到适合在使用(L)DAP作为其访问协议的目录中实现的表单。类似地,可以编写文档来提供[QPIM]中的数据到目录的映射。这四个文档(信息模型和目录模式映射)将一起描述如何编写QoS策略规则,这些规则可用于在目录中存储信息以配置设备QoS机制。
The approach taken in this document defines a common set of classes that can be used to model QoS in a device datapath. Vendors can then map these classes, either directly or using an intervening format like a COP-PR PIB, to their own device-specific implementations. Note that the admission control element of Integrated Services is not included in the scope of this model.
本文档中采用的方法定义了一组通用类,可用于对设备数据路径中的QoS进行建模。然后,供应商可以直接或使用COP-PR PIB等中间格式将这些类映射到他们自己的特定于设备的实现。请注意,集成服务的准入控制元素不包括在此模型的范围内。
The design of the class, association, and aggregation hierarchies described in this document is influenced by the Network QoS submodel defined by the Distributed Management Task Force (DMTF) - see [CIM]. These hierarchies are not derived from the Policy Core Information Model [PCIM]. This is because the modeling of the QoS mechanisms of a device is separate and distinct from the modeling of policies that manage those mechanisms. Hence, there is a need to separate QoS mechanisms (this document) from their control (specified using the generic policy document [PCIM] augmented by the QoS Policy document [QPIM]).
本文档中描述的类、关联和聚合层次结构的设计受分布式管理任务组(DMTF)定义的网络QoS子模型的影响-参见[CIM]。这些层次结构不是从策略核心信息模型[PCIM]派生的。这是因为设备的QoS机制的建模与管理这些机制的策略的建模是分开的。因此,需要将QoS机制(本文档)与其控制(使用QoS策略文档[QPIM]扩充的通用策略文档[PCIM]指定)分开。
While it is not a policy model per se, this document does have a dependency on the Policy Core Information Model Extensions document [PCIME]. The device-level packet filtering, through which a Classifier splits a traffic stream into multiple streams, is based on the FilterEntryBase and FilterList classes defined in [PCIME].
虽然本文档本身不是策略模型,但它确实依赖于策略核心信息模型扩展文档[PCIME]。设备级数据包过滤是基于[PCIME]中定义的FilterEntryBase和FilterList类,分类器通过该功能将流量流拆分为多个流。
The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT", "SHOULD", "SHOULD NOT", "RECOMMENDED", "MAY", and "OPTIONAL" in this document are to be interpreted as described in BCP 14, RFC 2119 [R2119].
本文件中的关键词“必须”、“不得”、“要求”、“应”、“不应”、“应”、“不应”、“建议”、“可”和“可选”应按照BCP 14、RFC 2119[R2119]中的说明进行解释。
The Policy Core Information Model [PCIM] describes a general methodology for constructing policy rules. PCIM Extensions [PCIME] updates and extends the original PCIM. A policy rule aggregates a set of policy conditions and an ordered set of policy actions. The semantics of a policy rule are such that if the set of conditions evaluates to TRUE, then the set of actions are executed.
策略核心信息模型[PCIM]描述了构造策略规则的一般方法。PCIM扩展[PCIME]更新并扩展原始PCIM。策略规则聚合一组策略条件和一组有序的策略操作。策略规则的语义是这样的:如果条件集的计算结果为TRUE,则执行操作集。
Policy conditions and actions have two principal components: operands and operators. Operands can be constants or variables. To specify a policy, it is necessary to specify:
策略条件和操作有两个主要组件:操作数和运算符。操作数可以是常量或变量。要指定策略,必须指定:
o the operands to be examined (also known as state variables);
o 要检查的操作数(也称为状态变量);
o the operands to be changed (also known as configuration variables);
o 要更改的操作数(也称为配置变量);
o the relationships between these two sets of operands.
o 这两组操作数之间的关系。
Operands can be specified at a high-level, such as Joe (a user) or Gold (a service). Operands can also be specified at a much finer level of detail, one that is much closer to the operation of the device. Examples of the latter include an IP Address or a queue's bandwidth allocation. Implicit in the use of operands is the binding of legal values or ranges of values to an operand. For example, the value of an IP address cannot be an integer. The concepts of operands and their ranges are defined in [PCIME].
可以在高级指定操作数,例如Joe(用户)或Gold(服务)。还可以在更精细的细节级别指定操作数,该级别更接近设备的操作。后者的示例包括IP地址或队列的带宽分配。操作数的使用隐含着将合法值或值范围绑定到操作数。例如,IP地址的值不能是整数。[PCIME]中定义了操作数及其范围的概念。
The second component of policy conditions and actions is a set of operators. Operators can express both relationships (greater than, member of a set, Boolean OR, etc.) and assignments. Together, operators and operands can express a variety of conditions and actions, such as:
策略条件和操作的第二个组成部分是一组运算符。运算符可以表示关系(大于、集合成员、布尔或等)和赋值。运算符和操作数一起可以表示各种条件和操作,例如:
If Bob is an Engineer... If the source IP address is in the Marketing Subnet... Set Joe's IP address to 192.0.2.100 Limit the bandwidth of application x to 10 Mb
如果鲍勃是工程师。。。如果源IP地址位于营销子网中。。。将Joe的IP地址设置为192.0.2.100将应用程序x的带宽限制为10 Mb
We recognize that the definition of operator semantics is critical to the definition of policies. However, the definition of these operators is beyond the scope of this document. Rather, this document (with [QPIM]) takes the first steps in identifying and standardizing a set of properties (operands) for use in defining policies for Differentiated and Integrated Services.
我们认识到,运算符语义的定义对于策略的定义至关重要。但是,这些运算符的定义超出了本文档的范围。相反,本文档(使用[QPIM])首先确定并标准化一组属性(操作数),用于定义差异化和集成服务的策略。
This model establishes a canonical model of the QoS mechanisms of a network device (e.g., a router, switch, or host) that is independent of any specific type of network device. This enables traffic conditioning to be described using a common set of abstractions, modeled as a set of services and sub-services.
该模型建立了独立于任何特定类型网络设备的网络设备(例如路由器、交换机或主机)的QoS机制的规范模型。这使得可以使用一组通用抽象来描述流量调节,并将其建模为一组服务和子服务。
When the concepts of this document are used in conjunction with the concepts of [QPIM], one is able to define policies that bind the services in a network to the needs of applications using that network. In other words, the business requirements of an organization can be reflected in one set of policies, and those policies can be translated to a lower-level set of policies that control and manage the configuration and operation of network devices.
当本文档的概念与[QPIM]的概念结合使用时,可以定义将网络中的服务绑定到使用该网络的应用程序需求的策略。换句话说,组织的业务需求可以反映在一组策略中,并且这些策略可以转换为控制和管理网络设备的配置和操作的较低级别的策略集。
Policies could be implemented as low-level rules using the information model described in this specification. For example, in a low-level policy, a condition could be represented as an evaluation of a specific attribute from this model. Therefore, a condition such as "If filter = HTTP" would be interpreted as a test determining whether any HTTP filters have been defined for the device. A high-level policy, such as "If protocol = HTTP, then mark with Differentiated Services Code Point (DSCP) 24," would be expressed as a series of actions in a low-level policy using the classes and attributes described below:
可以使用本规范中描述的信息模型将策略实现为低级规则。例如,在低级策略中,条件可以表示为对该模型中特定属性的评估。因此,诸如“If filter=HTTP”之类的条件将被解释为确定是否为设备定义了任何HTTP过滤器的测试。高级策略,例如“If protocol=HTTP,然后使用区分服务代码点(DSCP)24标记”,将使用下面描述的类和属性在低级策略中表示为一系列操作:
1. Create HTTP filter 2. Create DSCP marker with the value of 24 3. Bind the HTTP filter to the DSCP marker
1. 创建HTTP筛选器2。创建值为24 3的DSCP标记。将HTTP筛选器绑定到DSCP标记
Note that unlike "mark with DSCP 24," these low-level actions are not performed on a packet as it passes through the device. Rather, they are configuration actions performed on the device itself, to make it ready to perform the correct action(s) on the correct packet(s). The act of moving from a high-level policy rule to the correct set of low-level device configuration actions is an example of what [POLTERM] characterizes as "policy translation" or "policy conversion".
请注意,与“使用DSCP 24标记”不同,这些低级操作不会在数据包通过设备时对其执行。相反,它们是在设备本身上执行的配置操作,以使其准备对正确的数据包执行正确的操作。从高级策略规则移动到正确的低级设备配置操作集的行为就是[POLTERM]描述为“策略转换”或“策略转换”的一个例子。
QoS activities in the IETF have mainly focused in two areas, Integrated Services (IntServ) and Differentiated Services (DiffServ) (see [POLTERM], [R1633] and [R2475]). This document focuses on the specification of QoS properties and classes for modeling the datapath where packet traffic is conditioned. However, the framework defined by the classes in this document has been designed with the needs of the admission control portion of IntServ in mind as well.
IETF中的QoS活动主要集中在两个领域,即综合服务(IntServ)和区分服务(DiffServ)(参见[POLTERM]、[R1633]和[R2475])。本文档的重点是QoS属性和类的规范,用于对数据包流量所处的数据路径进行建模。然而,本文中的类定义的框架的设计也考虑了IntServ的准入控制部分的需要。
First, let us consider IntServ. IntServ has two principal components. One component is embedded in the datapath of the networking device. Its functions include the classification and policing of individual flows, and scheduling admitted packets for the outbound link. The other component of IntServ is admission control, which focuses on the management of the signaling protocol (e.g., the PATH and RESV messages of RSVP). This component processes reservation requests, manages bandwidth, outsources decision making to policy servers, and interacts with the Routing Table manager.
首先,让我们来考虑一下IntServ。IntServ有两个主要组件。网络设备的数据路径中嵌入了一个组件。它的功能包括对单个流进行分类和管理,以及为出站链路调度允许的数据包。IntServ的另一个组件是准入控制,它侧重于信令协议的管理(例如,RSVP的路径和RESV消息)。该组件处理预订请求,管理带宽,将决策外包给策略服务器,并与路由表管理器交互。
We will consider RSVP when defining the structure of this information model. As this document focuses on the datapath, elements of RSVP applicable to the datapath will be considered in the structure of the classes. The complete IntServ device model will, as we have indicated earlier, be addressed in a subsequent document.
在定义这个信息模型的结构时,我们将考虑RSVP。由于本文档主要关注数据路径,因此在类的结构中将考虑适用于数据路径的RSVP元素。如前所述,完整的IntServ设备模型将在后续文档中介绍。
This document models a small subset of the QoS policy problem, in hopes of constructing a methodology that can be adapted for other aspects of QoS in particular, and of policy construction in general. The focus in this document is on QoS for devices that implement traffic conditioning in the datapath.
本文档对QoS策略问题的一小部分进行建模,以期构建一种方法,该方法尤其适用于QoS的其他方面,以及一般的策略构建。本文档的重点是在数据路径中实现流量调节的设备的QoS。
DiffServ operates exclusively in the datapath. It has all of the same components of the IntServ datapath, with two major differences. First, DiffServ classifies packets based solely on their DSCP field, whereas IntServ examines a subset of a standard flow's addressing 5- tuple. The exception to this rule occurs in a router or host at the boundary of a DiffServ domain. A device in this position may examine a packet's DSCP, its addressing 5-tuple, other fields in the packet, or even information wholly outside the packet, in determining the DSCP value with which to mark the packet prior to its transfer into the DiffServ domain. However, routers in the interior of a DiffServ domain will only need to classify based on the DSCP field.
DiffServ仅在数据路径中运行。它具有IntServ数据路径的所有相同组件,但有两个主要区别。首先,DiffServ仅根据数据包的DSCP字段对数据包进行分类,而IntServ检查标准流寻址5元组的子集。此规则的例外情况发生在DiffServ域边界的路由器或主机中。处于该位置的设备可以检查分组的DSCP、其寻址5元组、分组中的其他字段,甚至是完全在分组之外的信息,以确定在分组传输到DiffServ域之前用于标记分组的DSCP值。然而,DiffServ域内部的路由器只需要根据DSCP字段进行分类。
The second difference between IntServ and DiffServ is that the signaling protocol used in IntServ (e.g., RSVP) affects the configuration of the datapath in a more dynamic fashion. This is because each newly admitted RSVP reservation requires a reconfiguration of the datapath. In contrast, DiffServ requires far fewer changes to the datapath after the Per Hop Behaviors (PHBs) have been configured.
IntServ和DiffServ之间的第二个区别是,IntServ中使用的信令协议(例如RSVP)以更动态的方式影响数据路径的配置。这是因为每个新接纳的RSVP保留都需要重新配置数据路径。相反,在配置每跳行为(PHB)后,DiffServ需要对数据路径进行的更改要少得多。
The approach advocated in this document for the creation of policies that control the various QoS mechanisms of networking devices is to first identify the attributes with which policies are to be constructed. These attributes are the parameters used in expressions that are necessary to construct policies. There is also a parallel desire to define the operators, relations, and precedence constructs necessary to construct the conditions and actions that constitute these policies. However, these efforts are beyond the scope of this document.
本文档中提倡的创建控制网络设备的各种QoS机制的策略的方法是,首先确定要构造策略的属性。这些属性是构造策略所必需的表达式中使用的参数。此外,还需要定义构成这些策略的条件和操作所需的运算符、关系和优先级结构。然而,这些努力超出了本文件的范围。
DiffServ-specific rules focus on two particular areas: the core and the edges of the network. As explained in the DiffServ Architecture document [R2475], devices at the edge of the network classify traffic into different traffic streams. The core of the network then forwards traffic from different streams by using a set of Per Hop Behaviors (PHBs). A DSCP identifies each PHB. The DSCP is part of the IP header of each packet (as described in [R2474]). This enables multiple traffic streams to be aggregated into a small number of aggregated traffic streams, where each aggregate traffic stream is identified by a particular DSCP, and forwarded using a particular PHB.
区分服务特定规则关注两个特定领域:网络的核心和边缘。正如DiffServ架构文档[R2475]中所解释的,网络边缘的设备将流量分类为不同的流量流。然后,网络核心使用一组每跳行为(PHB)转发来自不同流的流量。DSCP标识每个PHB。DSCP是每个数据包的IP报头的一部分(如[R2474]中所述)。这使得多个业务流能够聚合成少量的聚合业务流,其中每个聚合业务流由特定的DSCP标识,并使用特定的PHB转发。
The attributes used to manipulate QoS capabilities in the core of the network primarily address the behavioral characteristics of each supported PHB. At the edges of the DiffServ network, the additional complexities of flow classification, policing, RSVP mappings, remarkings, and other factors have to be considered. Additional modeling will be required in this area. However, first, the standards for edges of the DiffServ network need more detail - to allow the edges to be incorporated into the policy model.
用于操纵网络核心中的QoS能力的属性主要针对每个受支持PHB的行为特征。在DiffServ网络的边缘,必须考虑流分类、警务、RSVP映射、标记和其他因素的额外复杂性。该区域需要额外建模。然而,首先,区分服务网络边缘的标准需要更详细的信息,以便将边缘纳入策略模型。
This document focuses exclusively on the forwarding aspects of network QoS. Therefore, while the forwarding aspects of IntServ are considered, the management of IntServ is not considered. This topic will be addressed in a future document.
本文档专门关注网络QoS的转发方面。因此,虽然考虑了IntServ的转发方面,但没有考虑IntServ的管理。这一主题将在今后的文件中讨论。
There is a clear need to define attributes and behavior that together define how traffic should be conditioned. This document defines a set of classes and relationships that represent the QoS mechanisms used to condition traffic; [QPIM] is used to define policies to control the QoS mechanisms defined in this document.
显然需要定义属性和行为,这些属性和行为共同定义了流量应该如何调节。本文档定义了一组类和关系,这些类和关系表示用于调节流量的QoS机制;[QPIM]用于定义控制本文档中定义的QoS机制的策略。
However, some very basic issues need to be considered when combining these documents. Considering these issues should help in constructing a schema for managing the operation and configuration of network QoS mechanisms through the use of QoS policies.
但是,在合并这些文件时,需要考虑一些非常基本的问题。考虑这些问题将有助于构建一个通过使用QoS策略来管理网络QoS机制的操作和配置的模式。
The first issue requiring consideration is the level of abstraction at which QoS policies should be expressed. If we consider policies as a set of rules used to react to events and manipulate attributes or generate new events, we realize that policy represents a continuum of specifications that relate business goals and rules to the conditioning of traffic done by a device or a set of devices. An example of a business level policy might be: from 1:00 pm PST to 7:00 am EST, sell off 40% of the network capacity on the open market. In contrast, a device-specific policy might be: if the queue depth grows at a geometric rate over a specified duration, trigger a potential link failure event.
需要考虑的第一个问题是QoS策略应该表达的抽象级别。如果我们将策略视为用于对事件做出反应并操纵属性或生成新事件的一组规则,那么我们意识到策略代表了将业务目标和规则与设备或一组设备所做的流量调节有关的规范的连续性。业务级策略的一个示例可能是:从太平洋标准时间下午1:00到美国东部时间上午7:00,在公开市场上出售40%的网络容量。相反,特定于设备的策略可能是:如果队列深度在指定的持续时间内以几何速率增长,则触发潜在的链路故障事件。
A general model for this continuum is shown in Figure 1 below.
下图1显示了该连续体的一般模型。
+---------------------+ | High-Level Business | Not directly related to device | Policies | operation and configuration details +---------------------+ | | +---------V-----------+ | Device-Independent | Translate high-level policies to | Policies | generic device operational and +---------------------+ configuration information | | +---------V-----------+ | Device-Dependent | Translate generic device information | Policies | to specify how particular devices +---------------------+ should operate and be configured
+---------------------+ | High-Level Business | Not directly related to device | Policies | operation and configuration details +---------------------+ | | +---------V-----------+ | Device-Independent | Translate high-level policies to | Policies | generic device operational and +---------------------+ configuration information | | +---------V-----------+ | Device-Dependent | Translate generic device information | Policies | to specify how particular devices +---------------------+ should operate and be configured
Figure 1. The Policy Continuum
图1。政策连续体
High-level business policies are used to express the requirements of the different applications, and prioritize which applications get "better" treatment when the network is congested. The goal, then, is to use policies to relate the operational and configuration needs of a device directly to the business rules that the network administrator is trying to implement in the network that the device belongs to.
高级业务策略用于表示不同应用程序的需求,并在网络拥塞时优先考虑哪些应用程序得到“更好”的处理。因此,目标是使用策略将设备的操作和配置需求直接与网络管理员试图在设备所属的网络中实施的业务规则相关联。
Device-independent policies translate business policies into a set of generalized operational and configuration policies that are independent of any specific device, but dependent on a particular set of QoS mechanisms, such as random early detection (RED) dropping or weighted round robin scheduling. Not only does this enable different types of devices (routers, switches, hosts, etc.) to be controlled by QoS policies, it also enables devices made by different vendors that use the same types of QoS mechanisms to be controlled. This enables these different devices to each supply the correct relative conditioning to the same type of traffic.
与设备无关的策略将业务策略转换为一组通用的操作和配置策略,这些策略独立于任何特定设备,但依赖于一组特定的QoS机制,例如随机早期检测(RED)丢弃或加权循环调度。这不仅使不同类型的设备(路由器、交换机、主机等)能够由QoS策略控制,还使使用相同类型QoS机制的不同供应商制造的设备能够被控制。这使得这些不同的设备能够为相同类型的交通提供正确的相对调节。
In contrast, device-dependent policies translate device-independent policies into ones that are specific for a given device. The reason that a distinction is made between device-independent and device-dependent policies is that in a given network, many different devices having many different capabilities need to be controlled together. Device-independent policies provide a common layer of abstraction for managing multiple devices of different capabilities, while device-dependent policies implement the specific conditioning that is required. This document provides a common set of abstractions for representing QoS mechanisms in a device-independent way.
相反,依赖于设备的策略将独立于设备的策略转换为特定于给定设备的策略。区分设备独立策略和设备依赖策略的原因是,在给定的网络中,需要一起控制具有许多不同功能的许多不同设备。独立于设备的策略为管理具有不同功能的多个设备提供了一个公共抽象层,而依赖于设备的策略实现了所需的特定条件。本文档提供了一组通用抽象,用于以独立于设备的方式表示QoS机制。
This document is focused on the device-independent representation of QoS mechanisms. QoS mechanisms are modeled in sufficient detail to provide a common device-independent representation of QoS policies. They can also be used to provide a basis for specialization, enabling each vendor to derive a set of vendor-specific classes that represent how traffic conditioning is done for that vendor's set of devices.
本文档的重点是QoS机制的独立于设备的表示。对QoS机制进行了足够详细的建模,以提供与设备无关的QoS策略的通用表示。它们还可以用于提供专门化的基础,使每个供应商能够派生一组特定于供应商的类,这些类表示如何为该供应商的设备集进行流量调节。
Policies are a function of parameters (attributes) and operators (boolean, arithmetic, relational, etc.). Therefore, both need to be defined as part of the same policy in order to correctly condition the traffic. If the parameters of the policy are specified too narrowly, they will reflect the individual implementations of QoS in each device. As there is currently little consensus in the industry on what the correct implementation model for QoS is, most defined attributes would only be applicable to the unique characteristics of a few individual devices. Moreover, standardizing all of these
策略是参数(属性)和运算符(布尔、算术、关系等)的函数。因此,需要将两者定义为同一策略的一部分,以便正确调节流量。如果策略的参数指定得太窄,则它们将反映每个设备中QoS的各个实现。由于目前业界对QoS的正确实现模型几乎没有共识,大多数定义的属性只适用于少数个别设备的独特特性。此外,所有这些都需要标准化
potential implementation alternatives would be a never-ending task as new implementations continued to appear on the market.
随着市场上不断出现新的实施方案,潜在的实施方案将是一项永无止境的任务。
On the other hand, if the parameters of the policy are specified too broadly, it is impossible to develop meaningful policies. For example, if we concentrate on the so-called Olympic set of policies, a business policy like "Bob gets Gold Service," is clearly meaningless to the large majority of existing devices. This is because the device has no way of determining who Bob is, or what QoS mechanisms should be configured in what way to provide Gold service.
另一方面,如果政策参数的规定过于宽泛,就不可能制定有意义的政策。例如,如果我们专注于所谓的奥运政策,那么像“Bob获得金牌服务”这样的商业政策对绝大多数现有设备来说显然毫无意义。这是因为设备无法确定Bob是谁,也无法确定应以何种方式配置何种QoS机制来提供Gold服务。
Furthermore, Gold service may represent a single service, or it may identify a set of services that are related to each other. In the latter case, these services may have different conditioning characteristics.
此外,Gold服务可以表示单个服务,也可以标识一组相互关联的服务。在后一种情况下,这些服务可能具有不同的调节特性。
This document defines a set of parameters that fit into a canonical model for modeling the elements in the forwarding path of a device implementing QoS traffic conditioning. By defining this model in a device-independent way, the needed parameters can be appropriately abstracted.
本文档定义了一组参数,这些参数适合标准模型,用于对实现QoS流量调节的设备的转发路径中的元素进行建模。通过以独立于设备的方式定义此模型,可以适当地抽象所需的参数。
Administrators want the flexibility to be able to define traffic conditioning without having to have a low-level understanding of the different QoS mechanisms that implement that conditioning. Furthermore, administrators want the flexibility to group different services together, describing a higher-level concept such as "Gold Service". This higher-level service could be viewed as providing the processing to deliver "Gold" quality of service.
管理员希望能够灵活地定义流量调节,而不必对实现该调节的不同QoS机制有低层次的了解。此外,管理员希望能够灵活地将不同的服务组合在一起,以描述更高级别的概念,例如“黄金服务”。这种更高级别的服务可以被视为提供“黄金”服务质量的处理。
These two goals dictate the need for the following set of abstractions:
这两个目标决定了对以下抽象集的需要:
o a flexible way to describe a service
o 描述服务的灵活方式
o must be able to group different services that may use different technologies (e.g., DiffServ and IEEE 802.1Q) together
o 必须能够将可能使用不同技术(如DiffServ和IEEE 802.1Q)的不同服务分组在一起
o must be able to define a set of sub-services that together make up a higher-level service
o 必须能够定义一组共同构成更高级别服务的子服务
o must be able to associate a service and the set of QoS mechanisms that are used to condition traffic for that service
o 必须能够将服务与用于调节该服务流量的QoS机制集相关联
o must be able to define policies that manage the QoS mechanisms used to implement a service.
o 必须能够定义管理用于实现服务的QoS机制的策略。
This document addresses this set of problems by defining a set of classes and associations that can represent abstract concepts like "Gold Service," and bind each of these abstract services to a specific set of QoS mechanisms that implement the conditioning that they require. Furthermore, this document defines the concept of "sub-services," to enable Gold Service to be defined either as a single service or as a set of services that together should be treated as an atomic entity.
本文档通过定义一组类和关联来解决这组问题,这些类和关联可以表示抽象概念,如“黄金服务”,并将这些抽象服务中的每一个绑定到一组特定的QoS机制,以实现它们所需的条件。此外,本文件定义了“子服务”的概念,以使Gold Service能够被定义为单个服务或一组服务,这些服务一起应被视为一个原子实体。
Given these abstractions, policies (as defined in [QPIM]) can be written to control the QoS mechanisms and services defined in this document.
根据这些抽象,可以编写策略(如[QPIM]中所定义)来控制本文档中定义的QoS机制和服务。
This document defines a set of classes and properties to support policies that configure device QoS mechanisms. This document concentrates on the representation of services in the datapath that support both DiffServ (for aggregate traffic conditioning) and IntServ (for flow-based traffic conditioning). Classes and properties for modeling IntServ admission control services may be defined in a future document.
本文档定义了一组类和属性,以支持配置设备QoS机制的策略。本文档集中介绍数据路径中支持DiffServ(用于聚合流量调节)和IntServ(用于基于流的流量调节)的服务的表示。用于建模IntServ准入控制服务的类和属性可能在将来的文档中定义。
The classes and properties in this document are designed to be used in conjunction with the QoS policy classes and properties defined in [QPIM]. For example, to preserve the delay characteristics committed to an end-user, a network administrator may wish to create policies that monitor the queue depths in a device, and adjust resource allocations when delay budgets are at risk (perhaps as a result of a network topology change). The classes and properties in this document define the specific services and mechanisms required to implement those services. The classes and properties defined in [QPIM] provide the overall structure of the policy that manages and configures this service.
本文档中的类和属性旨在与[QPIM]中定义的QoS策略类和属性结合使用。例如,为了保留提交给最终用户的延迟特性,网络管理员可能希望创建监控设备中队列深度的策略,并在延迟预算面临风险时(可能由于网络拓扑更改)调整资源分配。本文档中的类和属性定义了实现这些服务所需的特定服务和机制。[QPIM]中定义的类和属性提供了管理和配置此服务的策略的总体结构。
This combination of low-level specification (using this document) and high-level structuring (using [QPIM]) of network services enables network administrators to define new services required of the network, that are directly related to business goals, while ensuring that such services can be managed. However, this goal (of creating and managing service-oriented policies) can only be realized if policies can be constructed that are capable of supporting diverse implementations of QoS. The solution is to model the QoS capabilities of devices at the behavioral level. This means that for traffic conditioning services realized in the datapath, the model must support the following characteristics:
网络服务的低级规范(使用本文档)和高级结构(使用[QPIM])的结合使网络管理员能够定义网络所需的与业务目标直接相关的新服务,同时确保可以管理此类服务。但是,只有构建能够支持不同的QoS实现的策略,才能实现(创建和管理面向服务的策略)这一目标。解决方案是在行为级别对设备的QoS能力进行建模。这意味着,对于在数据路径中实现的流量调节服务,模型必须支持以下特征:
o modeling of a generic network service that has QoS capabilities
o 具有QoS功能的通用网络服务的建模
o modeling of how the traffic conditioning itself is defined
o 交通调节本身如何定义的建模
o modeling of how statistics are gathered to monitor QoS traffic conditioning services - this facet of the model will be added in a future document.
o 如何收集统计数据以监控QoS流量调节服务的建模-模型的这一方面将在未来的文档中添加。
This document models a network service, and associates it with one or more QoS mechanisms that are used to implement that service. It also models in a canonical form the various components that are used to condition traffic, such that standard as well as custom traffic conditioning services may be described.
本文档对网络服务进行建模,并将其与用于实现该服务的一个或多个QoS机制相关联。它还以规范的形式对用于调节流量的各种组件进行建模,以便可以描述标准以及自定义流量调节服务。
The QoS properties and classes will be described in more detail in Section 4. However, we should consider the basic characteristics of these properties, to understand the methodology for representing them.
第4节将更详细地描述QoS属性和类。然而,我们应该考虑这些性质的基本特征,以理解表示它们的方法。
There are essentially two types of properties, state and configuration. Configuration properties describe the desired state of a device, and include properties and classes for representing desired or proposed thresholds, bandwidth allocations, and how to classify traffic. State properties describe the actual state of the device. These include properties to represent the current operational values of the attributes in devices configured via the configuration properties, as well as properties that represent state (queue depths, excess capacity consumption, loss rates, and so forth).
本质上有两种类型的属性,状态和配置。配置属性描述设备的所需状态,包括用于表示所需或建议的阈值、带宽分配以及如何对流量进行分类的属性和类。状态属性描述设备的实际状态。这些属性包括表示通过配置属性配置的设备中属性的当前操作值的属性,以及表示状态(队列深度、过剩容量消耗、丢失率等)的属性。
In order to be correlated and used together, these two types of properties must be modeled using a common information model. The possibility of modeling state properties and their corresponding configuration settings is accomplished using the same classes in this model - although individual instances of the classes would have to be appropriately named or placed in different containers to distinguish current state values from desired configuration settings.
为了相互关联并一起使用,必须使用公共信息模型对这两种类型的属性进行建模。建模状态属性及其相应配置设置的可能性是使用此模型中的相同类来实现的,尽管这些类的各个实例必须适当命名或放置在不同的容器中,以区分当前状态值和所需的配置设置。
State information is addressed in a very limited fashion by QDDIM. Currently, only CurrentQueueDepth is proposed as an attribute on QueuingService. The majority of the model is related to configuration. Given this fact, it is assumed that this model is a direct memory map into a device. All manipulation of model classes and properties directly affects the state of the device. If it is desired to also use these classes to represent desired configuration, that is left to the discretion of the implementor.
QDDIM以非常有限的方式处理状态信息。目前,仅建议将CurrentQueueDepth作为QueuingService的属性。模型的大部分与配置有关。鉴于这一事实,假设该模型是直接映射到设备的内存。对模型类和属性的所有操作都会直接影响设备的状态。如果还需要使用这些类来表示所需的配置,则由实现者自行决定。
It is acknowledged that additional properties are needed to completely model current state. However, many of the properties defined in this document represent exactly the state variables that will be configured by the configuration properties. Thus, the definition of the configuration properties has an exact correspondence with the state properties, and can be used in modeling both actual (state) and desired/proposed configuration.
众所周知,需要额外的属性来完全模拟当前状态。但是,本文档中定义的许多属性正好表示将由配置属性配置的状态变量。因此,配置属性的定义与状态属性具有精确的对应关系,并且可以用于对实际(状态)和期望/提议的配置进行建模。
The question of context also leads to another question: how does the information specified in the core and QoS policy models ([PCIM], [PCIME], and [QPIM], respectively) integrate with the information defined in this document? To put it another way, where should device-independent concepts that lead to device-specific QoS attributes be derived from?
上下文问题还引出另一个问题:核心和QoS策略模型中指定的信息([PCIM]、[PCIME]和[QPIM]分别)如何与本文档中定义的信息集成?换句话说,导致特定于设备的QoS属性的设备无关概念应该从何而来?
Past thinking was that QoS was part of the policy model. This view is not completely accurate, and it leads to confusion. QoS is a set of services that can be controlled using policy. These services are represented as device mechanisms. An important point here is that QoS services, as well as other types of services (e.g., security), are provided by the mechanisms inherent in a given device. This means that not all devices are indeed created equal. For example, although two devices may have the same type of mechanism (e.g., a queue), one may be a simple implementation (i.e., a FIFO queue) whereas one may be much more complex and robust (e.g., class-based weighted fair queuing (CBWFQ)). However, both of these devices can be used to deliver QoS services, and both need to be controlled by policy. Thus, a device-independent policy can instruct the devices to queue certain traffic, and a device-specific policy can be used to control the queuing in each device.
过去的想法是QoS是策略模型的一部分。这种观点并不完全准确,而且会导致混乱。QoS是一组可以使用策略控制的服务。这些服务表示为设备机制。这里重要的一点是,QoS服务以及其他类型的服务(例如,安全性)是由给定设备中固有的机制提供的。这意味着并非所有设备都是平等的。例如,尽管两个设备可能具有相同类型的机制(例如,队列),但其中一个设备可能是简单的实现(例如,FIFO队列),而另一个设备可能更加复杂和健壮(例如,基于类的加权公平队列(CBWFQ))。然而,这两种设备都可以用来提供QoS服务,并且都需要由策略控制。因此,独立于设备的策略可以指示设备对特定业务排队,并且可以使用特定于设备的策略来控制每个设备中的排队。
Furthermore, policy is used to control these mechanisms, not to represent them. For example, QoS services are implemented with classifiers, meters, markers, droppers, queues, and schedulers. Similarly, security is also a characteristic of devices, as authentication and encryption capabilities represent services that networked devices perform (irrespective of interactions with policy servers). These security services may use some of the same mechanisms that are used by QoS services, such as the concepts of filters. However, they will mostly require different mechanisms than the ones used by QoS, even though both sets of services are implemented in the same devices.
此外,策略用于控制这些机制,而不是表示它们。例如,QoS服务是通过分类器、计量器、标记器、滴管、队列和调度器实现的。类似地,安全性也是设备的一个特征,因为身份验证和加密功能表示网络设备执行的服务(与策略服务器的交互无关)。这些安全服务可以使用QoS服务使用的一些相同机制,例如过滤器的概念。然而,尽管这两组服务在相同的设备中实现,但它们大多需要不同于QoS所使用的机制。
Thus, the similarity between the QoS model and models for other services is not so much that they contain a few common mechanisms. Rather, they model how a device implements their respective services.
因此,QoS模型和其他服务模型之间的相似性并不太大,它们包含一些常见的机制。相反,它们对设备如何实现各自的服务进行建模。
As such, the modeling of QoS should be part of a networking device schema rather than a policy schema. This allows the networking device schema to concentrate on modeling device mechanisms, and the policy schema to focus on the semantics of representing the policy itself (conditions, actions, operators, etc.). While this document concentrates on defining an information model to represent QoS services in a device datapath, the ultimate goal is to be able to apply policies that control these services in network devices. Furthermore, these two schemata (device and policy) must be tightly integrated in order to enable policy to control QoS services.
因此,QoS的建模应该是网络设备模式的一部分,而不是策略模式。这允许网络设备模式集中于设备机制的建模,策略模式集中于表示策略本身的语义(条件、操作、运算符等)。虽然本文档集中于定义一个信息模型来表示设备数据路径中的QoS服务,但最终目标是能够在网络设备中应用控制这些服务的策略。此外,为了使策略能够控制QoS服务,这两个模式(设备和策略)必须紧密集成。
The last issue to be considered is the question of how attributes are represented. If QoS attributes are represented as absolute numbers (e.g., Class AF2 gets 2 Mbs of bandwidth), it is more difficult to make them uniform across multiple ports in a device or across multiple devices, because of the broad variation in link capacities. However, expressing attributes in relative or proportional terms (e.g., Class AF2 gets 5% of the total link bandwidth) makes it more difficult to express certain types of conditions and actions, such as:
最后要考虑的问题是如何表示属性的问题。如果QoS属性表示为绝对数(例如,类别AF2获得2 Mbs的带宽),则由于链路容量的广泛变化,使它们在设备中的多个端口或多个设备之间更难以统一。然而,以相对或比例表示属性(例如,类别AF2获得总链路带宽的5%)使得更难以表示某些类型的条件和动作,例如:
(If ConsumedBandwidth = AssignedBandwidth Then ...)
(如果ConsumedBandwidth=AssignedBandwidth,则…)
There are really three approaches to addressing this problem:
解决这个问题实际上有三种方法:
o Multiple properties can be defined to express the same value in various forms. This idea has been rejected because of the difficulty in keeping these different properties synchronized (e.g., when one property changes, the others all have to be updated).
o 可以定义多个属性以各种形式表示相同的值。由于难以保持这些不同属性的同步(例如,当一个属性发生更改时,其他属性都必须更新),此想法被拒绝。
o Multi-modal properties can be defined to express the same value, in different terms, based on the access or assignment mode. This option was rejected because it significantly complicates the model and is impossible to express in current directory access protocols (e.g., (L)DAP).
o 根据访问或分配模式,可以定义多模式属性以不同的术语表示相同的值。此选项被拒绝,因为它大大使模型复杂化,并且无法在当前目录访问协议(例如,(L)DAP)中表示。
o Properties can be expressed as "absolutes", but the operators in the policy schema would need to be more sophisticated. Thus, to represent a percentage, division and multiplication operators are required (e.g., Class AF2 gets .05 * the total link bandwidth). This is the approach that has been taken in this document.
o 属性可以表示为“绝对”,但策略模式中的运算符需要更加复杂。因此,为了表示百分比,需要除法和乘法运算符(例如,类AF2获得0.05*总链路带宽)。这是本文件中采用的方法。
The mental model for constructing this schema is based on the work done in the Differentiated Services working group. This schema is based on information provided in the current versions of the DiffServ Informal Management Model [DSMODEL], the DiffServ MIB [DSMIB], the PIB [PIB], as well as on information in the set of RFCs that constitute the basic definition of DiffServ itself ([R2475], [R2474], [R2597], and [R3246]). In addition, a common set of terminology is available in [POLTERM].
构建此模式的心智模型基于差异化服务工作组所做的工作。此模式基于当前版本的DiffServ非正式管理模型[DSMODEL]、DiffServ MIB[DSMIB]、PIB[PIB]中提供的信息,以及构成DiffServ本身基本定义的RFC集合中的信息([R2475]、[R2474]、[R2597]和[R3246])。此外,[POLTERM]中还提供了一套通用术语。
This model is built around two fundamental class hierarchies that are bound together using a set of associations. The two class hierarchies derive from the QoSService and ConditioningService base classes. A set of associations relate lower-level QoSService subclasses to higher-level QoS services, relate different types of conditioning services together in processing a traffic class, and relate a set of conditioning services to a specific QoS service. This combination of associations enables us to view the device as providing a set of services that can be configured, in a modular building block fashion, to construct application-specific services. Thus, this document can be used to model existing and future standard as well as application-specific network QoS services.
该模型是围绕两个基本类层次结构构建的,它们使用一组关联绑定在一起。这两个类层次结构派生自QoSService和ConditioningService基类。一组关联将较低级别的QoS服务子类与较高级别的QoS服务相关联,将不同类型的调节服务在处理流量类时关联在一起,并将一组调节服务与特定的QoS服务相关联。这种关联组合使我们能够将设备视为提供了一组服务,这些服务可以以模块化构建块的方式进行配置,以构建特定于应用程序的服务。因此,本文档可用于建模现有和未来的标准以及特定于应用程序的网络QoS服务。
The first of the classes defined here, QoSService, is used to represent higher-level network services that require special conditioning of their traffic. An instance of QoSService (or one of its subclasses) is used to bring together a group of conditioning services that, from the perspective of the system manager, are all used to deliver a common service. Thus, the set of classifiers, markers, and related conditioning services that provide premium service to the "selected" set of user traffic may be grouped together into a premium QoS service.
这里定义的第一个类QoSService用于表示需要对其流量进行特殊调节的高级网络服务。QoSService实例(或其子类之一)用于汇集一组调节服务,从系统管理器的角度来看,这些服务都用于提供公共服务。因此,可以将向“所选”用户业务集合提供高级服务的分类器、标记和相关调节服务集合分组到高级QoS服务中。
QoSService has a set of subclasses that represent different approaches to delivering IP services. The currently defined set of subclasses are a FlowService for flow-oriented QoS delivery and a DiffServService for DiffServ aggregate-oriented QoS service delivery.
QoSService有一组子类,它们表示提供IP服务的不同方法。当前定义的子类集是用于面向流的QoS交付的FlowService和用于面向DiffServ聚合的QoS服务交付的DiffServService。
The QoS services can be related to each other as peers, or they can be implemented as subservient services to each other. The QoSSubService aggregation indicates that one or more QoSService objects are subservient to a particular QoSService object. For example, this enables us to define Gold Service as a combination of two DiffServ services, one for high quality traffic treatment, and one for servicing the rest of the traffic. Each of these
QoS服务可以作为对等方相互关联,也可以作为彼此的从属服务来实现。QoSService聚合表示一个或多个QoSService对象从属于特定QoSService对象。例如,这使我们能够将Gold服务定义为两个DiffServ服务的组合,一个用于高质量流量处理,另一个用于服务其余流量。每一个
DiffServService objects would be associated with a set of classifiers, markers, etc, such that the high quality traffic would get EF marking and appropriate queuing.
DiffServService对象将与一组分类器、标记等相关联,这样高质量的流量将获得EF标记和适当的排队。
The DiffServService class itself has an AFService subclass. This subclass is used to represent the specific notion that several related markings within the AF PHB Group work together to provide a single service. When other DiffServ PHB Groups are defined that use more than one code point, these will be likely candidates for additional DiffServService subclasses.
DiffServService类本身有一个AFService子类。此子类用于表示AF PHB组中的多个相关标记共同提供单一服务的特定概念。当定义使用多个代码点的其他DiffServ PHB组时,这些可能是其他DiffServService子类的候选对象。
Technology-specific mappings of these services, representing the specific use of PHB marking or 802.1Q marking, are captured within the ConditioningService hierarchy, rather than in the subclasses of QoSService.
这些服务的特定于技术的映射(表示PHB标记或802.1Q标记的特定用途)在ConditioningService层次结构中捕获,而不是在QoSService的子类中捕获。
These concepts are depicted in Figure 2. Note that both of the associations are aggregations: a QoSService object aggregates both the set of QoSService objects subservient to it, and the set of ConditioningService objects that realize it. See Section 4 for class and association definitions.
这些概念如图2所示。请注意,这两个关联都是聚合:QoSService对象聚合从属于它的QoSService对象集和实现它的ConditioningService对象集。有关类和关联定义,请参见第4节。
/\______ 0..1 \/ | +--------------+ | QoSSubService +---------------+ | |0..n | | | | QoSService |----- | Conditioning | | | | Service | | | | | | |0..n 0..n| | | | /\______________________| | | | \/ QoSConditioning | | +--------------+ SubService +---------------+
/\______ 0..1 \/ | +--------------+ | QoSSubService +---------------+ | |0..n | | | | QoSService |----- | Conditioning | | | | Service | | | | | | |0..n 0..n| | | | /\______________________| | | | \/ QoSConditioning | | +--------------+ SubService +---------------+
Figure 2. QoSService and its Aggregations
图2。QoSService及其聚合
The goal of the ConditioningService classes is to describe the sequence of traffic conditioning that is applied to a given traffic stream on the ingress interface through which it enters a device, and then on the egress interface through which it leaves the device. This is done using a set of classes and relationships. The routing decision in the device core, which selects which egress interface a particular packet will use, is not represented in this model.
ConditioningService类的目标是描述应用于给定流量流的流量调节顺序,该流量流通过入口接口进入设备,然后通过出口接口离开设备。这是使用一组类和关系来完成的。设备核心中的路由决策(用于选择特定数据包将使用的出口接口)不在该模型中表示。
A single base class, ConditioningService, is the superclass for a set of subclasses representing the mechanisms that condition traffic.
单个基类ConditioningService是一组子类的超类,这些子类表示调节流量的机制。
These subclasses define device-independent conditioning primitives (including classifiers, meters, markers, droppers, queues, and schedulers) that together implement the conditioning of traffic on an interface. This model abstracts these services into a common set of modular building blocks that can be used, regardless of device implementation, to model the traffic conditioning internal to a device.
这些子类定义了独立于设备的调节原语(包括分类器、仪表、标记、滴管、队列和调度程序),它们共同实现接口上流量的调节。该模型将这些服务抽象为一组通用的模块化构建块,无论设备实现如何,都可以使用这些模块对设备内部的流量调节进行建模。
The different conditioning mechanisms need to be related to each other to describe how traffic is conditioned. Several important variations of how these services are related together exist:
不同的调节机制需要相互关联,以描述交通是如何调节的。这些服务如何相互关联存在几个重要的变体:
o A particular ingress or egress interface may not require all the types of ConditioningServices.
o 特定的入口或出口接口可能不需要所有类型的条件服务。
o Multiple instances of the same mechanism may be required on an ingress or egress interface.
o 在入口或出口接口上可能需要相同机制的多个实例。
o There is no set order of application for the ConditioningServices on an ingress or egress interface.
o 入口或出口接口上的条件服务没有设置应用程序顺序。
Therefore, this model does not dictate a fixed ordering among the subclasses of ConditioningService, or identify a subclass of ConditioningService that must appear first or last among the ConditioningServices on an ingress or egress interface. Instead, this model ties together the various ConditioningService instances on an ingress or egress interface using the NextService, NextServiceAfterMeter, and NextServiceAfterConditioningElement associations. There are also separate associations, called IngressConditioningServiceOnEndpoint and EgressConditioningServiceOnEndpoint, which, respectively, tie an ingress interface to its first ConditioningService, and tie an egress interface to its last ConditioningService(s).
因此,该模型不规定ConditioningService子类之间的固定顺序,也不确定ConditioningService子类必须在入口或出口接口上的ConditioningService中首先出现或最后出现。相反,此模型使用NextService、NextServiceAfterMeter和NextServiceAfterConditioningElement关联将入口或出口接口上的各种ConditioningService实例绑定在一起。还有单独的关联,称为入口条件服务OnEndpoint和出口条件服务OnEndpoint,分别将入口接口与其第一个条件服务绑定,将出口接口与其最后一个条件服务绑定。
There is one important way in which the QDDIM model diverges from the [DSMODEL]. In [DSMODEL], traffic passes through a network device in three stages:
QDDIM模型偏离[DSMODEL]的一个重要方式是。在[DSMODEL]中,流量分三个阶段通过网络设备:
o It comes in on an ingress interface, where it may receive QoS conditioning.
o 它来自入口接口,在那里它可以接收QoS调节。
o It traverses the routing core, where logic outside the scope of QoS determines which egress interface it will use to leave the device.
o 它遍历路由核心,在路由核心中,QoS范围之外的逻辑决定它将使用哪个出口接口离开设备。
o It may receive further QoS conditioning on the selected egress interface, and then it leaves the device.
o 它可以在所选出口接口上接收进一步的QoS调节,然后离开设备。
In this model, no information about the QoS conditioning that a packet receives on the ingress interface is communicated with the packet across the routing core to the egress interface.
在该模型中,没有关于分组在入口接口上接收的QoS调节的信息通过路由核心与分组通信到出口接口。
The QDDIM model relaxes this restriction, to allow information about the treatment that a packet received on an ingress interface to be communicated along with the packet to the egress interface. (This relaxation adds a capability that is present in many network devices.) QDDIM represents this information transfer in terms of a packet preamble, which is how many devices implement it. But implementations are free to use other mechanisms to achieve the same result.
QDDIM模型放松了该限制,以允许关于在入口接口上接收的分组与分组一起被传送到出口接口的处理的信息。(这种放松增加了许多网络设备中存在的功能。)QDDIM用数据包前导表示这种信息传输,这是有多少设备实现它。但是实现可以自由地使用其他机制来实现相同的结果。
+---------+ | Meter-A | a | | b d --->| In-|---PM-1---> | | c e | Out-|---PM-2---> +---------+
+---------+ | Meter-A | a | | b d --->| In-|---PM-1---> | | c e | Out-|---PM-2---> +---------+
Figure 3: Meter Followed by Two Preamble Markers
图3:后跟两个前导标记的仪表
Figure 3 shows an example in which meter results are captured in a packet preamble. The arrows labeled with single letters represent instances of either the NextService association (a, d, and e), or of its peer association NextServiceAfterMeter (b and c). PreambleMarker PM-1 adds to the packet preamble an indication that the packet exited Meter A as conforming traffic. Similarly, PreambleMarker PM-2 adds to the preambles of packets that come through it indications that they exited Meter A as nonconforming traffic. A PreambleMarker appends its information to whatever is already present in a packet preamble, as opposed to overwriting what is already there.
图3显示了一个示例,其中在数据包前导中捕获了仪表结果。标有单个字母的箭头表示NextService关联(a、d和e)或其对等关联NextService AfterMeter(b和c)的实例。前置码标记器PM-1向数据包前置码添加一个指示,表明该数据包作为一致性通信量退出计量器A。类似地,前置码标记PM-2向通过它的数据包的前置码中添加指示它们作为不合格通信退出计量器A。前置码标记将其信息附加到数据包前置码中已经存在的内容,而不是覆盖已经存在的内容。
To foster interoperability, the basic format of the information captured by a PreambleMarker is specified. (Implementations, of course, are free to represent this information in a different way internally - this is just how it is represented in the model.) The information is represented by an ordered, multi-valued string property FilterItemList, where each individual value of the property is of the form "<type>,<value>". When a PreambleMarker "appends" its information to the information that was already present in a packet preamble, it does so by adding additional items of the indicated format to the end of the list.
为了促进互操作性,指定了前置码标记捕获的信息的基本格式。(当然,实现可以自由地在内部以不同的方式表示此信息—这就是它在模型中的表示方式。)信息由有序的多值字符串属性FilterItemList表示,其中属性的每个单独值的形式为“<type>,<value>”。当前置码标记器将其信息“附加”到已经存在于数据包前置码中的信息时,它通过将指示格式的附加项添加到列表的末尾来实现。
QDDIM provides a limited set of <type>'s that a PreambleMarker may use:
QDDIM提供了前置码标记可以使用的一组有限的<type>:
o ConformingFromMeter: the value is the name of the meter.
o ConformingFromMeter:该值是仪表的名称。
o PartConformingFromMeter: the value is the name of the meter.
o PartConformingFromMeter:该值是仪表的名称。
o NonConformingFromMeter: the value is the name of the meter.
o NonConformingFromMeter:该值是仪表的名称。
o VlanId: the value is the virtual LAN identifier (VLAN ID).
o VlanId:该值是虚拟LAN标识符(VLAN ID)。
Implementations may recognize other <type>'s in addition to these. If collisions of implementation-specific <type>'s become a problem, it is possible that <type>'s may become an IANA-administered range in a future revision of this document.
除此之外,实现还可以识别其他<type>。如果特定于实现的<type>冲突成为问题,则<type>可能在本文档的未来版本中成为IANA管理的范围。
To make use of the information that a PreambleMarker stores in a packet preamble, a specific subclass PreambleFilter of FilterEntryBase is defined, to match on the "<type>,<value>" strings. To simplify the case where there's just a single level of metering in a device, but different individual meters on each ingress interface, PreambleFilter allows a wildcard "any" for the <value> part of the three meter-related filters. With this wildcard, an administrator can specify a Classifier to select all packets that were found to be conforming (or partially conforming, or non-conforming) by their respective meters, without having to name each meter individually in a separate ClassifierElement.
为了利用前置码标记存储在数据包前导码中的信息,定义了FilterEntryBase的特定子类前置码过滤器,以匹配“<type>,<value>”字符串。为了简化设备中只有一个计量级别,但每个入口接口上有不同的单独仪表的情况,前置码过滤器允许三个仪表相关过滤器的<value>部分使用通配符“any”。有了这个通配符,管理员可以指定一个分类器来选择通过其各自的仪表发现符合(或部分符合,或不符合)的所有数据包,而不必在单独的ClassifierRelation中单独命名每个仪表。
Once a meter result has been stored in a packet preamble, it is available for any subsequent Classifier to use. So while the motivation for this capability has been described in terms of preserving QoS conditioning information from an ingress interface to an egress interface, a prior meter result may also be used for classifying packets later in the datapath on the same interface where the meter resides.
一旦仪表结果存储在数据包前序中,它就可供任何后续分类器使用。因此,虽然已经根据从入口接口到出口接口保存QoS调节信息来描述了该能力的动机,但是先前的仪表结果也可用于稍后在仪表驻留的同一接口上的数据路径中对分组进行分类。
This document uses a number of classes to model the classifiers defined in [DSMODEL]: ClassifierService, ClassifierElement, FilterList, FilterEntryBase, and various subclasses of FilterEntryBase. There are also two associations involved: ClassifierElementUsesFilterList and EntriesInFilterList. The QDDIM model makes no use of CIM's FilterEntry class.
本文档使用许多类对[DSMODEL]中定义的分类器进行建模:ClassifierService、ClassifierRelation、FilterList、FilterEntryBase以及FilterEntryBase的各种子类。还有两种关联:ClassificationRelationUseSFilterList和EntriesFilterList。QDDIM模型不使用CIM的FilterEntry类。
In [DSMODEL], a single traffic stream coming into a classifier is split into multiple traffic streams leaving it, based on which of an ordered set of filters each packet in the incoming stream matches. A
在[DSMODEL]中,进入分类器的单个业务流被分割成离开分类器的多个业务流,基于传入流中每个数据包匹配的有序过滤器集中的哪一个。A.
filter matches either a field in the packet itself, or possibly other attributes associated with the packet. In the case of a multi-field (MF) classifier, packets are assigned to output streams based on the contents of multiple fields in the packet header. For example, an MF classifier might assign packets to an output stream based on their complete IP-addressing 5-tuple.
筛选器匹配数据包本身中的字段,或者可能匹配与数据包关联的其他属性。在多字段(MF)分类器的情况下,基于分组报头中多个字段的内容将分组分配给输出流。例如,MF分类器可以基于完整的IP寻址5元组将数据包分配给输出流。
To optimize the representation of MF classifiers, subclasses of FilterEntryBase are introduced, which allow multiple related packet header fields to be represented in a single object. These subclasses are IPHeaderFilter and 8021Filter. With IPHeaderFilter, for example, criteria for selecting packets based on all five of the IP 5-tuple header fields and the DiffServ DSCP can be represented by a FilterList containing one IPHeaderFilter object. Because these two classes have applications beyond those considered in this document, they, as well as the abstract class FilterEntryBase, are defined in the more general document [PCIME] rather than here.
为了优化MF分类器的表示,引入了FilterEntryBase的子类,允许在单个对象中表示多个相关的数据包头字段。这些子类是iPhonederFilter和8021Filter。例如,对于IPHeaderFilter,基于所有五个IP 5元组头字段和DiffServ DSCP选择数据包的标准可以由包含一个IPHeaderFilter对象的FilterList表示。由于这两个类的应用程序超出了本文档中所考虑的应用程序,因此它们以及抽象类FilterEntryBase在更通用的文档[PCIME]中定义,而不是在这里定义。
The FilterList object is always needed, even if it contains only one filter entry (that is, one FilterEntryBase subclass) object. This is because a ClassifierElement can only be associated with a Filter List, as opposed to an individual FilterEntry. FilterList is also defined in [PCIME].
始终需要FilterList对象,即使它只包含一个筛选器条目(即一个FilterEntryBase子类)对象。这是因为ClassificateRelation只能与筛选器列表相关联,而不是与单个FilterEntry相关联。过滤器列表也在[PCIME]中定义。
The EntriesInFilterList aggregation (also defined in [PCIME]) has a property EntrySequence, which in the past (in CIM) could be used to specify an evaluation order on the filter entries in a FilterList. Now, however, the EntrySequence property supports only a single value: '0'. This value indicates that the FilterEntries are ANDed together to determine whether a packet matches the MF selector that the FilterList represents.
EntriesInFilterList聚合(也在[PCIME]中定义)有一个属性EntrySequence,过去(在CIM中)可用于指定FilterList中过滤器项的求值顺序。但是,现在EntrySequence属性只支持一个值:“0”。此值表示将FilterEntry与一起进行AND运算,以确定数据包是否与FilterList表示的MF选择器匹配。
A ClassifierElement specifies the starting point for a specific policy or data path. Each ClassifierElement uses the NextServiceAfterClassifierElement association to determine the next conditioning service to apply for packets to.
ClassifiedRelation指定特定策略或数据路径的起点。每个ClassifiedRelation都使用NextServiceAfterClassifiedRelation关联来确定要向其应用数据包的下一个条件服务。
A ClassifierService defines a grouping of ClassifierElements. There are certain instances where a ClassifierService actually specifies an aggregation of ClassifierServices. One practical case would be where each ClassifierService specifies a group of policies associated with a particular application and another ClassifierService groups the application-specific ClassifierService instances. In this particular case, the application-specific ClassifierService instances are specified once, but unique combinations of these ClassifierServices are specified, as needed, using other ClassifierService instances. ClassifierService instances grouping other ClassifierService instances may not specify a FilterList using the
ClassifierService定义了一组ClassifierRelation。在某些情况下,ClassifierService实际指定ClassifierService的聚合。一种实际情况是,每个ClassifierService指定一组与特定应用程序关联的策略,而另一个ClassifierService将特定于应用程序的ClassifierService实例分组。在这种特定情况下,指定一次特定于应用程序的ClassifierService实例,但根据需要使用其他ClassifierService实例指定这些ClassifierService的唯一组合。对其他ClassifierService实例进行分组的ClassifierService实例不能使用
ClassifierElementUsesFilterList association. This special use of ClassifierService serves just as a Classifier collecting function.
ClassificationRelationUsesFilterList关联。ClassifierService的这种特殊用途只是作为分类器收集功能。
In [DSMODEL], a distinction is made between absolute droppers and algorithmic droppers. In QDDIM, both of these types of droppers are modeled with the DropperService class, or with one of its subclasses. In both cases, the queue from which the dropper drops packets is tied to the dropper by an instance of the NextService association. The dropper always plays the PrecedingService role in these associations, and the queue always plays the FollowingService role. There is always exactly one queue from which a dropper drops packets.
在[DSMODEL]中,对绝对滴管和算法滴管进行了区分。在QDDIM中,这两种类型的滴管都使用DropperService类或其子类之一建模。在这两种情况下,dropper从中丢弃数据包的队列由NextService关联的实例绑定到dropper。滴管始终在这些关联中扮演前向服务角色,队列始终扮演后向服务角色。滴管总是从一个队列中丢弃数据包。
Since an absolute dropper drops all packets in its queue, it needs no configuration beyond a NextService tie to that queue. For an algorithmic dropper, however, further configuration is needed:
由于绝对滴管丢弃其队列中的所有数据包,因此除了与该队列的NextService连接之外,它不需要任何配置。但是,对于算法滴管,需要进一步配置:
o a specific drop algorithm;
o 特定的drop算法;
o parameters for the algorithm (for example, token bucket size);
o 算法的参数(例如,令牌桶大小);
o the source(s) of input(s) to the algorithm;
o 算法的输入源;
o possibly per-input parameters for the algorithm.
o 可能是算法的每个输入参数。
The first two of these items are represented by properties of the DropperService class, or properties of one of its subclasses. The last two, however, involve additional classes and associations.
其中前两项由DropperService类的属性或其子类之一的属性表示。然而,最后两个涉及额外的类和关联。
The HeadTailDropQueueBinding is the association that identifies the inputs for the algorithm executed by a tail dropper. This association is not used for a head dropper, because a head dropper always has exactly one input to its drop algorithm, and this input is always the queue from which it drops packets. For a tail dropper, this association is defined to have a many-to-many cardinality. There are, however, two distinct cases:
HeadTailDropQueueBinding是标识尾部滴管执行的算法输入的关联。此关联不用于头滴管,因为头滴管的丢弃算法始终只有一个输入,而此输入始终是它从中丢弃数据包的队列。对于尾部滴管,此关联被定义为具有多对多基数。然而,有两种不同的情况:
One dropper bound to many queues: This represents the case where the drop algorithm for the dropper involves inputs from more than one queue. The dropper still drops from only one queue, the one to which it is tied by a NextService association. But the drop decision may be influenced by the state of several queues. For the classes HeadTailDropper and HeadTailDropQueueBinding, the rule for combining the multiple inputs is simple addition: if the sum of the lengths of the monitored queues exceeds the dropper's QueueThreshold value, then
一个滴管绑定到多个队列:这表示滴管的滴管算法涉及来自多个队列的输入的情况。滴管仍然只从一个队列中滴落,该队列由NextService关联绑定。但是丢弃决策可能会受到多个队列状态的影响。对于HeadTailDropper和HeadTailDropQueueBinding类,组合多个输入的规则是简单的加法:如果受监视队列的长度总和超过dropper的QueueThreshold值,则
packets are dropped. This rule for combining inputs may, however, be overridden by a different rule in subclasses of one or both of these classes.
数据包被丢弃。但是,组合输入的规则可能会被这些类中一个或两个类的子类中的不同规则覆盖。
One queue bound to many droppers: This represents the case where the state of one queue (which is typically also the queue from which packets are dropped) provides an input to multiple droppers' drop algorithms. A use case here is a classifier that splits a traffic stream into, say, four parts, representing four classes of traffic. Each of the parts goes through a separate HeadTailDropper, then they're re-merged onto the same queue. The net is a single queue containing packets of four traffic types, with, say, the following drop thresholds:
一个队列绑定到多个拖放器:这表示一个队列(通常也是从中丢弃数据包的队列)的状态向多个拖放器的丢弃算法提供输入的情况。这里的一个用例是一个分类器,它将一个流量流分成四个部分,代表四类流量。每个零件都经过一个单独的头尾滴管,然后合并到同一队列中。网络是一个包含四种流量类型的数据包的单一队列,具有以下丢弃阈值:
o Class 1 - 90% full o Class 2 - 80% full o Class 3 - 70% full o Class 4 - 50% full
o 1级-90%满2级-80%满3级-70%满4级-50%满
Here the percentages represent the overall state of the queue. With this configuration, when the queue in question becomes 50% full, Class 4 packets will be dropped rather than joining the queue, when it becomes 70% full, Class 3 and 4 packets will be dropped, etc.
这里的百分比表示队列的整体状态。使用此配置,当相关队列已满50%时,将丢弃类别4数据包而不是加入队列;当队列已满70%时,将丢弃类别3和类别4数据包,以此类推。
The two cases described here can also occur together, if a dropper receives inputs from multiple queues, one or more of which are also providing inputs to other droppers.
这里描述的两种情况也可能同时发生,如果一个滴管从多个队列接收输入,其中一个或多个队列也向其他滴管提供输入。
Like a tail dropper, a RED dropper, represented by an instance of the REDDropperService class, may take as its inputs the states of multiple queues. In this case, however, there is an additional step: each of these inputs may be smoothed before the RED dropper uses it, and the smoothing process itself must be parameterized. Consequently, in addition to REDDropperService and QueuingService, a third class, DropThresholdCalculationService, is introduced, to represent the per-queue parameterization of this smoothing process.
与尾部滴管一样,由REDDropperService类的实例表示的红色滴管可以将多个队列的状态作为其输入。然而,在这种情况下,还有一个额外的步骤:在红色滴管使用之前,可以对这些输入中的每一个进行平滑,并且平滑过程本身必须参数化。因此,除了REDDropperService和QueuingService之外,还引入了第三类DropThresholdCalculationService,以表示此平滑过程的每队列参数化。
The following instance diagram illustrates how these classes work with each other:
下面的实例图说明了这些类如何相互协作:
RDSvc-A | | | +-----+ | +-----+ | | | DTCS-1 DTCS-2 DTCS-3 | | | Q-1 Q-2 Q-3
RDSvc-A | | | +-----+ | +-----+ | | | DTCS-1 DTCS-2 DTCS-3 | | | Q-1 Q-2 Q-3
Figure 4. Inputs for a RED Dropper
图4。红色滴管的输入
So REDDropperService-A (RDSvc-A) is using inputs from three queues to make its drop decision. (As always, RDSvc-A is linked to the queue from which it drops packets via the NextService association.) For each of these three queues, there is a (DropThresholdCalculationService) DTCS instance that represents the smoothing weight and time interval to use when looking at that queue. Thus each DTCS instance is tied to exactly one queue, although a single queue may be examined (with different weight and time values) by multiple DTCS instances. Also, a DTCS instance and the queue behind it can be thought of as a "unit of reusability". So a single DTCS can be referred to by multiple RDSvc's.
因此REDDropperService-A(RDSvc-A)使用来自三个队列的输入来做出丢弃决策。(与往常一样,RDSvc-A通过NextService关联链接到它从中丢弃数据包的队列。)对于这三个队列中的每一个,都有一个(DropThresholdCalculationService)DTC实例,它表示查看该队列时要使用的平滑权重和时间间隔。因此,每个DTC实例仅绑定到一个队列,尽管单个队列可由多个DTC实例检查(具有不同的权重和时间值)。此外,DTC实例及其后面的队列可以被视为“可重用单元”。因此,多个RDSvc可以引用单个DTC。
Unless it is overridden by a different rule in a subclass of REDDropperService, the rule that a RED dropper uses to combine the smoothed inputs from the DTCS's to create a value to use in making its drop decision is simple addition.
除非它被REDDropperService子类中的不同规则覆盖,否则红色滴管用于组合来自DTC的平滑输入以创建值以用于作出滴管决策的规则是简单的加法。
In order to appreciate the rationale behind this rather complex model for scheduling, we must consider the rather complex nature of schedulers, as well as the extreme variations in algorithms and implementations. Although these variations are broad, we have identified four examples that serve to test the model and justify its complexity.
为了理解这一相当复杂的调度模型背后的原理,我们必须考虑调度程序的相当复杂的性质,以及算法和实现的极端变化。虽然这些变化是广泛的,但我们已经确定了四个示例,用于测试模型并证明其复杂性。
A simple, hierarchical scheduler has the following properties. First, when a scheduling opportunity is given to a set of queues, a single, viable queue is determined based on some scheduling criteria, such as bandwidth or priority. The output of the scheduler is the input to another scheduler that treats the first scheduler (and its queues) as a single logical queue. Hence, if the first scheduler determined the appropriate packet to release based on a priority assigned to each
一个简单的分层调度程序具有以下属性。首先,当一个调度机会被给予一组队列时,将根据一些调度标准(如带宽或优先级)来确定单个可行队列。调度器的输出是另一个调度器的输入,该调度器将第一个调度器(及其队列)视为单个逻辑队列。因此,如果第一调度器基于分配给每个调度器的优先级确定要释放的适当分组
queue, the second scheduler might specify a bandwidth limit/allocation for the entire set of queues aggregated by the first scheduler.
队列时,第二个调度器可能会为第一个调度器聚合的整个队列集指定带宽限制/分配。
+----------+ NextService |QueuingSvc+----------------------------------------------+ | Name=EF1 | | | | QueueTo +--------------+ ElementSched | | +------------+PrioritySched +---------------+ | +----------+ Schedule |Element | Service | | | Name=EF1-Pri | | v | Priority=1 | +-----------+-+-+ +--------------+ |SchedulingSvc + | Name=PriSched1+ +--------------+ +----------+--+-+ |PrioritySched | ElementSched | ^ +----------+ |Element +---------------+ | |QueuingSvc| QueueTo | Name=AF1x-Pri| Service | | Name=AF1x+------------+ Priority=2 | | | | Schedule +--------------+ | | | NextService | | +----------------------------------------------+ +----------+ : +---------------+ NextScheduler |SchedulingSvc +--------------------------------------------+ | Name=PriSched1| | +-------+-------+ +--------------------+ElementSchedSvc| | SchedToSched |AllocationScheduling+--------+ | +---------------+Element | | | | Name=PriSched1-Band| | | | Units=Bytes | | v | Bandwidth=100 | +------+------+--+ +--------------------+ |SchedulingSvc | | Name=BandSched1| +--------------------+ +------+------+--+ |AllocationScheduling| | ^ +---------------+ |Element +--------+ | |QueuingService | | Name=BE-Band |ElementSchedSvc| | Name=BE |QueueTo+ Units=Bytes | | | |-------+ Bandwidth=50 | | | |Sched +--------------------+ | | | NextService | | +--------------------------------------------+ +---------------+
+----------+ NextService |QueuingSvc+----------------------------------------------+ | Name=EF1 | | | | QueueTo +--------------+ ElementSched | | +------------+PrioritySched +---------------+ | +----------+ Schedule |Element | Service | | | Name=EF1-Pri | | v | Priority=1 | +-----------+-+-+ +--------------+ |SchedulingSvc + | Name=PriSched1+ +--------------+ +----------+--+-+ |PrioritySched | ElementSched | ^ +----------+ |Element +---------------+ | |QueuingSvc| QueueTo | Name=AF1x-Pri| Service | | Name=AF1x+------------+ Priority=2 | | | | Schedule +--------------+ | | | NextService | | +----------------------------------------------+ +----------+ : +---------------+ NextScheduler |SchedulingSvc +--------------------------------------------+ | Name=PriSched1| | +-------+-------+ +--------------------+ElementSchedSvc| | SchedToSched |AllocationScheduling+--------+ | +---------------+Element | | | | Name=PriSched1-Band| | | | Units=Bytes | | v | Bandwidth=100 | +------+------+--+ +--------------------+ |SchedulingSvc | | Name=BandSched1| +--------------------+ +------+------+--+ |AllocationScheduling| | ^ +---------------+ |Element +--------+ | |QueuingService | | Name=BE-Band |ElementSchedSvc| | Name=BE |QueueTo+ Units=Bytes | | | |-------+ Bandwidth=50 | | | |Sched +--------------------+ | | | NextService | | +--------------------------------------------+ +---------------+
Figure 5. Example 1: Simple Hierarchical Scheduler
图5。示例1:简单的分层调度器
Figure 5 illustrates the example and how it would be instantiated using the model. In the figure, NextService determines the first scheduler after the queue. NextScheduler determines the subsequent ordering of schedulers. In addition, the ElementSchedulingService association determines the set of scheduling parameters used by a specific scheduler. Scheduling parameters can be bound either to queues or to schedulers. In the case of the SchedulingElement EF1-Pri, the binding is to a queue, so the QueueToSchedule association is used. In the case of the SchedulingElement PriSched1-Band, the binding is to another scheduler, so the SchedulerToSchedule association is used. Note that due to space constraints of the document, the SchedulingService PRISched1 is represented twice, to show how it is connected to all the other objects.
图5说明了该示例以及如何使用该模型对其进行实例化。在图中,NextService确定队列后的第一个调度程序。NextScheduler确定调度器的后续顺序。此外,ElementSchedulingService关联确定特定调度器使用的一组调度参数。调度参数可以绑定到队列或调度程序。对于SchedulingElement EF1 Pri,绑定到队列,因此使用QueueToSchedule关联。对于SchedulingElement PriSched1带,绑定到另一个调度器,因此使用SchedulerToSchedule关联。请注意,由于文档的空间限制,SchedulingService PRISched1显示了两次,以显示它如何连接到所有其他对象。
A complex, hierarchical scheduler has the same characteristics as a simple scheduler, except that the criteria for the second scheduler are determined on a per queue basis rather than on an aggregate basis. One scenario might be a set of bounded priority schedulers. In this case, each queue is assigned a relative priority. However, each queue is also not allowed to exceed a bandwidth allocation that is unique to that queue. In order to support this scenario, the queue must be bound to two separate schedulers. Figure 6 illustrates this situation, by describing an EF queue and a best effort (BE) queue both pointing to a priority scheduler via the NextService association. The NextScheduler association between the priority scheduler and the bandwidth scheduler in turn defines the ordering of the scheduling hierarchy. Also note that each scheduler has a distinct set of scheduling parameters that are bound back to each queue. This demonstrates the need to support two or more parameter sets on a per queue basis.
复杂的分层调度器与简单调度器具有相同的特性,不同之处在于第二个调度器的标准是基于每个队列而不是基于聚合来确定的。一种情况可能是一组有界优先级的调度程序。在这种情况下,将为每个队列分配一个相对优先级。但是,也不允许每个队列超过该队列唯一的带宽分配。为了支持这种情况,队列必须绑定到两个单独的调度器。图6通过描述EF队列和best effort(BE)队列说明了这种情况,这两个队列都通过NextService关联指向优先级调度器。优先级调度器和带宽调度器之间的NextScheduler关联反过来定义了调度层次结构的顺序。还要注意,每个调度器都有一组不同的调度参数,这些参数绑定回每个队列。这表明需要在每个队列的基础上支持两个或多个参数集。
+----------------+ |QueuingService | | Name=EF | | |QueueTo +----------------+ElementSchedSvc | +----------+AllocationSched +--------+ ++---+-----------+Schedule |Element | | | | | Name=BandEF | | | |QueueTo | Units=Bytes | | | |Schedule | Bandwidth=100 | | | | +----------------+ +------+---------+ | | |SchedulingSvc | | | +------------------+ | Name=BandSched | | +------+PriorityScheduling| +------------+--++ | |Element | ^ | | | Name=PriEF |ElementSchedSvc | | | | Priority=1 +---------------------+ | | | +------------------+ | | | |NextService | | | +-------------------------------------------------+ | | | | | | | NextService | | | | +-----------------------------------------------+ | | | | | | | | | | | +------------------+ElementSchedSvc | | | | | | |PriorityScheduling+--------+ | | | | | | |Element | | | | | | | | | Name=PriBE | | v v | | | | +------+ Priority=2 | +---+--------+-+-+-+Next| | | | +------------------+ |SchedulingService +----+ | | | | Name=PriSched |Sched | | | +------------------+ | | |QueueTo | | |Schedule +----------------+ | | | |AllocationSched |ElementSchedSvc | +----+---------+ |Element +-----------------+ |QueuingService|QueueTo | Name=BandBE | | Name=BE +------------+ Units=Bytes | | |Schedule | Bandwidth=50 | | | +----------------+ +--------------+
+----------------+ |QueuingService | | Name=EF | | |QueueTo +----------------+ElementSchedSvc | +----------+AllocationSched +--------+ ++---+-----------+Schedule |Element | | | | | Name=BandEF | | | |QueueTo | Units=Bytes | | | |Schedule | Bandwidth=100 | | | | +----------------+ +------+---------+ | | |SchedulingSvc | | | +------------------+ | Name=BandSched | | +------+PriorityScheduling| +------------+--++ | |Element | ^ | | | Name=PriEF |ElementSchedSvc | | | | Priority=1 +---------------------+ | | | +------------------+ | | | |NextService | | | +-------------------------------------------------+ | | | | | | | NextService | | | | +-----------------------------------------------+ | | | | | | | | | | | +------------------+ElementSchedSvc | | | | | | |PriorityScheduling+--------+ | | | | | | |Element | | | | | | | | | Name=PriBE | | v v | | | | +------+ Priority=2 | +---+--------+-+-+-+Next| | | | +------------------+ |SchedulingService +----+ | | | | Name=PriSched |Sched | | | +------------------+ | | |QueueTo | | |Schedule +----------------+ | | | |AllocationSched |ElementSchedSvc | +----+---------+ |Element +-----------------+ |QueuingService|QueueTo | Name=BandBE | | Name=BE +------------+ Units=Bytes | | |Schedule | Bandwidth=50 | | | +----------------+ +--------------+
Figure 6. Example 2: Complex Hierarchical Scheduler
图6。示例2:复杂的分层调度器
An excess capacity scheduler offers a similar requirement to support two scheduling parameter sets per queue. However, in this scenario the reasons are a little different. Suppose a set of queues have each been assigned bandwidth limits to ensure that no traffic class starves out another traffic class. The result may be that one or more queues have exceeded their allocation while the queues that deserve scheduling opportunities are empty.
过剩容量调度器提供了一个类似的要求,即每个队列支持两个调度参数集。然而,在这种情况下,原因略有不同。假设为一组队列分配了带宽限制,以确保没有流量类会耗尽另一个流量类。结果可能是一个或多个队列超出了其分配,而值得调度的队列为空。
The question then is how is the excess (idle) bandwidth allocated. Conceivably, the scheduling criteria for excess capacity are completely different from the criteria that determine allocations under uniform load. This could be supported with a scheduling hierarchy. However, the problem is that the criteria for using the subsequent scheduler are different from those in the last two cases. Specifically, the next scheduler should only be used if a scheduling opportunity exists that was passed over by the prior scheduler.
接下来的问题是如何分配多余(空闲)带宽。可以想象,过剩容量的调度标准与确定均匀负载下分配的标准完全不同。调度层次结构可以支持这一点。但是,问题是使用后续调度器的标准与前两种情况不同。具体地说,只有在存在上一个调度程序传递的调度机会时,才应使用下一个调度程序。
When a scheduler chooses to forgo a scheduling decision, it is behaving as a non-work conserving scheduler. Work conserving schedulers, by definition, will always take advantage of a scheduling opportunity, irrespective of which queue is being serviced and how much bandwidth it has consumed in the past. This point leads to an interesting insight. The semantics of a non-work conserving scheduler are equivalent to those of a meter, in that if a packet is in profile it is given the scheduling opportunity, and if it is out of profile it does not get a scheduling opportunity. However, with meters there are semantics that determine the next action behavior when the packet is in profile and when the packet is out of profile. Similarly, with the non-work conserving scheduler, there needs to be a means for determining the next scheduler when a scheduler chooses not to utilize a scheduling opportunity.
当调度器选择放弃一个调度决策时,它表现为一个不节省工作的调度器。顾名思义,节省工作的调度器将始终利用调度机会,而不管正在服务哪个队列以及它在过去消耗了多少带宽。这一点引出了一个有趣的见解。非工作节约型调度器的语义相当于仪表的语义,因为如果数据包处于配置文件中,它将获得调度机会,如果数据包处于配置文件之外,它将不会获得调度机会。然而,对于仪表,当数据包处于配置文件中或数据包不在配置文件中时,语义决定了下一个动作行为。类似地,对于非工作节省调度器,当调度器选择不利用调度机会时,需要有一种确定下一个调度器的方法。
Figure 7 illustrates this last scenario. It appears very similar to Figure 6, except that the binding between the allocation scheduler and the WRR scheduler is using a FailNextScheduler association. This association is explicitly indicating the fact that the only time the WRR scheduler would be used is when there are non-empty queues that the allocation scheduler rejected for scheduling consideration. Note that Figure 7 is incomplete, in that typically there would be several more queues that are bound to an allocation scheduler and a WRR scheduler.
图7说明了最后一个场景。它与图6非常相似,只是分配调度器和WRR调度器之间的绑定使用FailNextScheduler关联。此关联明确指示这样一个事实,即WRR调度器将被使用的唯一时间是当存在非空队列时,分配调度器出于调度考虑而拒绝了这些队列。请注意,图7是不完整的,因为通常会有多个队列绑定到分配调度器和WRR调度器。
+------------+ |QueuingSvc | | Name=EF | | | | | ++-+---------+ | | | |QueueTo | |Schedule +--------------+ | | |SchedulingSvc | | | +------------------+ | Name=WRRSched| | +------+AllocationSched | +----------+-+-+ | |Element | ^ | | | Name=BandEF |ElementSchedSvc | | | | Units=Bytes +--------------------+ | | | | Bandwidth=100 | | | | | +------------------+ | | | |NextService | | | +----------------------------------------------+ | | | | | | | NextService | | | | +--------------------------------------------+ | | | | | | | | | | | +------------------+ElementSchedSvc | | | | | | |AllocationSched +--------+ | | | | | | |Element | | | | | | | | | Name=BandwidthAF1| | | | | | | | | Units=Bytes | | v v | | | | +------+ Bandwidth=50 | +--+----------+-+-++FailNext| | | | +------------------+ |SchedulingService +--------+ | | |QueueTo | Name=BandSched |Scheduler | | |Schedule +------------------+ | | | | | | +---------------------+ | ++-+-----------+ | WRRSchedulingElement| | |QueuingService|QueueTo | Name=WRRBE +------------+ | Name=BE +-----------+ Weight=30 |ElementSchedSvc +--------------+Schedule +---------------------+
+------------+ |QueuingSvc | | Name=EF | | | | | ++-+---------+ | | | |QueueTo | |Schedule +--------------+ | | |SchedulingSvc | | | +------------------+ | Name=WRRSched| | +------+AllocationSched | +----------+-+-+ | |Element | ^ | | | Name=BandEF |ElementSchedSvc | | | | Units=Bytes +--------------------+ | | | | Bandwidth=100 | | | | | +------------------+ | | | |NextService | | | +----------------------------------------------+ | | | | | | | NextService | | | | +--------------------------------------------+ | | | | | | | | | | | +------------------+ElementSchedSvc | | | | | | |AllocationSched +--------+ | | | | | | |Element | | | | | | | | | Name=BandwidthAF1| | | | | | | | | Units=Bytes | | v v | | | | +------+ Bandwidth=50 | +--+----------+-+-++FailNext| | | | +------------------+ |SchedulingService +--------+ | | |QueueTo | Name=BandSched |Scheduler | | |Schedule +------------------+ | | | | | | +---------------------+ | ++-+-----------+ | WRRSchedulingElement| | |QueuingService|QueueTo | Name=WRRBE +------------+ | Name=BE +-----------+ Weight=30 |ElementSchedSvc +--------------+Schedule +---------------------+
Figure 7. Example 3: Excess Capacity Scheduler
图7。示例3:过剩容量调度器
A hierarchical class-based queuing (CBQ) scheduler is the fourth scenario to be considered. In hierarchical CBQ, each queue is allocated a specific bandwidth allocation. Queues are grouped together into a logical scheduler. This logical scheduler in turn has an aggregate bandwidth allocation that equals the sum of the queues it is scheduling. In turn, logical schedulers can be aggregated into higher-level logical schedulers. Changing perspectives and looking top down, the top-most logical scheduler has 100% of the link capacity. This allocation is parceled out to logical schedulers below it such that the sum of the allocations is equal to 100%. These second tier schedulers may in turn parcel out their allocation across a third tier of schedulers and so forth until the lowest tier that parcels out their allocations to specific queues representing relatively fine-grained classes of traffic. The unique aspect of hierarchical CBQ is that when there is insufficient bandwidth for a specific allocation, schedulers higher in the tree are tested to see if another portion of the tree has capacity to spare.
需要考虑的第四种方案是基于类的分层队列(CBQ)调度器。在分层CBQ中,每个队列分配一个特定的带宽分配。队列被分组到一个逻辑调度程序中。这个逻辑调度器又有一个聚合带宽分配,该分配等于它正在调度的队列的总和。反过来,逻辑调度器可以聚合为更高级别的逻辑调度器。更改透视图并自上而下查看,最顶层的逻辑调度程序拥有100%的链路容量。此分配被分配给它下面的逻辑调度器,以便分配的总和等于100%。这些第二层调度器可以反过来将它们的分配分包到第三层调度器上,以此类推,直到将它们的分配分包到表示相对细粒度的通信量类别的特定队列的最低层为止。分层CBQ的独特之处在于,当特定分配的带宽不足时,将测试树中较高的调度器,以查看树的另一部分是否有空闲容量。
Figure 8 demonstrates this example with two tiers. The example is split in half because of space constraints, resulting in the CBQTier1 scheduling service instance being represented twice. Note that the total allocation at the top tier is 50 Mb. The voice allocation is 22 Mb. The remaining 23 Mb is split between FTP and Web. Hence, if Web traffic is actually consuming 20 Mb (5 Mb in excess of the allocation). If FTP is consuming 5 Mb, then it is possible for the CBQTier1 scheduler to offer 3Mb of its allocation to Web traffic. However, this is not enough, so the FailNextScheduler association needs to be traversed to determine if there is any excess capacity available from the voice class. If the voice class is only consuming 15 Mb of its 22 Mb allocation, there are sufficient resources to allow the web traffic through. Note that FailNextScheduler is used as the association. The reason is because the CBQTier1 scheduler in fact failed to schedule a packet because of insufficient resources. It is conceivable that a variant of hierarchical CBQ allows a hierarchy for successful scheduling as well. Hence, both associations are necessary.
图8用两层演示了这个示例。由于空间限制,该示例被一分为二,导致CBQTier1调度服务实例被表示两次。请注意,顶层的总分配是50MB。语音分配为22MB。剩余的23MB在FTP和Web之间分配。因此,如果Web流量实际消耗20MB(超出分配的5MB)。如果FTP消耗5MB,那么CBQTier1调度程序可以为Web流量提供3Mb的分配。但是,这还不够,因此需要遍历FailNextScheduler关联以确定voice类中是否存在任何可用的多余容量。如果voice类仅消耗其22 Mb分配中的15 Mb,则有足够的资源允许web流量通过。请注意,FailNextScheduler用作关联。原因是CBQTier1调度程序实际上由于资源不足而未能调度数据包。可以想象,分级CBQ的变体也允许分级成功调度。因此,这两种联系都是必要的。
Note that due to space constraints of the document, the SchedulingService CBQTier1 is represented twice, to show how it is connected to all the other objects.
请注意,由于文档的空间限制,SchedulingService CBQTier1显示了两次,以显示它如何连接到所有其他对象。
+-----------+ NextService |QueuingSvc +-------------------------------------------+ | Name=Web | | | |QueueTo+----------------+ ElementSchedSvc | | +-------+AllocationSched +----------------+ | +-----------+Sched |Element | | | | Name=Web-Alloc | | v | Bandwidth=15 | +-----------+-+-+ +----------------+ |SchedulingSvc + | Name=CBQTier1 + +----------------+ +-----------+-+-+ |AllocationSched | ElementSchedSvc| ^ +-----------+ |Element +----------------+ | |QueuingSvc |QueueTo| Name=FTP-Alloc | | | Name=FTP +-------+ Bandwidth=8 | | | |Sched +----------------+ | | | NextService | | +-------------------------------------------+ +-----------+ :
+-----------+ NextService |QueuingSvc +-------------------------------------------+ | Name=Web | | | |QueueTo+----------------+ ElementSchedSvc | | +-------+AllocationSched +----------------+ | +-----------+Sched |Element | | | | Name=Web-Alloc | | v | Bandwidth=15 | +-----------+-+-+ +----------------+ |SchedulingSvc + | Name=CBQTier1 + +----------------+ +-----------+-+-+ |AllocationSched | ElementSchedSvc| ^ +-----------+ |Element +----------------+ | |QueuingSvc |QueueTo| Name=FTP-Alloc | | | Name=FTP +-------+ Bandwidth=8 | | | |Sched +----------------+ | | | NextService | | +-------------------------------------------+ +-----------+ :
+---------------+ FailNextScheduler |SchedulingSvc +---------------------------------------------+ | Name=CBQTier1 | | +-------+-------+ +---------------------+ElementSchedSvc| | SchedToSched |AllocationScheduling +--------+ | +---------------+Element | | | | Name=LowPri-Alloc | | | | Bandwidth=23 | | v +---------------------+ +-----+------+-+ |SchedulingSvc | | Name=CBQTop | +---------------------+ +----------+-+-+ |AllocationScheduling |ElementSchedSvc | ^ +------------+ |Element +----------------+ | |QueuingSvc |QueueTo| Name=BE-Band | | | Name=Voice +-------+ Bandwidth=22 | | | |Sched +---------------------+ | | | NextService | | +------------------------------------------------+ +------------+
+---------------+ FailNextScheduler |SchedulingSvc +---------------------------------------------+ | Name=CBQTier1 | | +-------+-------+ +---------------------+ElementSchedSvc| | SchedToSched |AllocationScheduling +--------+ | +---------------+Element | | | | Name=LowPri-Alloc | | | | Bandwidth=23 | | v +---------------------+ +-----+------+-+ |SchedulingSvc | | Name=CBQTop | +---------------------+ +----------+-+-+ |AllocationScheduling |ElementSchedSvc | ^ +------------+ |Element +----------------+ | |QueuingSvc |QueueTo| Name=BE-Band | | | Name=Voice +-------+ Bandwidth=22 | | | |Sched +---------------------+ | | | NextService | | +------------------------------------------------+ +------------+
Figure 8. Example 4: Hierarchical CBQ Scheduler
图8。示例4:分层CBQ调度程序
The following sections present the class and association hierarchies that together comprise the information model for modeling QoS capabilities at the device level.
以下各节介绍了类和关联层次结构,它们共同构成了用于在设备级别建模QoS功能的信息模型。
Associations and aggregations are a means of representing relationships between two (or theoretically more) objects. Dependency, aggregation, and other relationships are modeled as classes containing two (or more) object references. It should be noted that aggregations represent either "whole-part" or "collection" relationships. For example, aggregation can be used to represent the containment relationship between a system and the components that constitute the system.
关联和聚合是表示两个(或理论上更多)对象之间关系的一种方法。依赖、聚合和其他关系被建模为包含两个(或更多)对象引用的类。应该注意,聚合表示“整体-部分”或“集合”关系。例如,聚合可用于表示系统与构成系统的组件之间的包含关系。
Since associations and aggregations are classes, they can benefit from all of the object-oriented features that other non-relationship classes have. For example, they can contain properties and methods, and inheritance can be used to refine their semantics such that they represent more specialized types of their superclasses.
因为关联和聚合是类,所以它们可以受益于其他非关系类所具有的所有面向对象的特性。例如,它们可以包含属性和方法,并且可以使用继承来细化它们的语义,以便它们表示其超类的更特殊类型。
Note that an association (or an aggregation) object is treated as an atomic unit (individual instance), even though it relates/collects/is comprised of multiple objects. This is a defining feature of an association (or an aggregation) - although the individual elements that are related to other objects have their own identities, the association (or aggregation) object that is constructed using these objects has its own identity and name as well.
请注意,关联(或聚合)对象被视为一个原子单元(单个实例),即使它关联/收集/由多个对象组成。这是关联(或聚合)的一个定义特性—尽管与其他对象相关的各个元素有自己的标识,但使用这些对象构造的关联(或聚合)对象也有自己的标识和名称。
It is important to note that associations and aggregations form an inheritance hierarchy that is separate from the class inheritance hierarchy. Although associations and aggregations are typically bi-directional, there is nothing that prevents higher order associations or aggregations from being defined. However, such associations and aggregations are inherently more complex to define, understand, and use. In practice, associations and aggregations of orders higher than binary are rarely used, because of their greatly increased complexity and lack of generality. All of the associations and aggregations defined in this model are binary.
需要注意的是,关联和聚合形成了一个独立于类继承层次结构的继承层次结构。尽管关联和聚合通常是双向的,但没有任何东西可以阻止定义高阶关联或聚合。然而,这种关联和聚合本质上更复杂,难以定义、理解和使用。实际上,比二进制更高阶的关联和聚合很少使用,因为它们大大增加了复杂性,并且缺乏通用性。此模型中定义的所有关联和聚合都是二进制的。
Note also that by definition, associations and aggregations cannot be unary.
还要注意,根据定义,关联和聚合不能是一元的。
Finally, note that associations and aggregations that are defined between two classes do not affect the classes themselves. That is, the addition or deletion of an association or an aggregation does not affect the interfaces of the classes that it is connecting.
最后,请注意,在两个类之间定义的关联和聚合不会影响类本身。也就是说,添加或删除关联或聚合不会影响它所连接的类的接口。
The structure of the class, association, and aggregation class inheritance hierarchies for managing the datapaths of QoS devices is shown, respectively, in Figure 9, Figure 10, and Figure 11. The notation (CIMCORE) identifies a class defined in the CIM Core model. Please refer to [CIM] for the definitions of these classes. Similarly, the notation [PCIME] identifies a class defined in the Policy Core Information Model Extensions document. This model has been influenced by [CIM], and is compatible with the Directory Enabled Networks (DEN) effort.
用于管理QoS设备的数据路径的类、关联和聚合类继承层次结构分别如图9、图10和图11所示。符号(CIMCORE)标识CIM Core模型中定义的类。有关这些类的定义,请参考[CIM]。类似地,符号[PCIME]标识策略核心信息模型扩展文档中定义的类。此模型受[CIM]的影响,并与目录启用网络(DEN)工作兼容。
+--ManagedElement (CIMCORE) | +--ManagedSystemElement (CIMCORE) | | | +--LogicalElement (CIMCORE) | | | +--Service (CIMCORE) | | | | | +--ConditioningService | | | | | | | +--ClassifierService | | | | | | | | | +--ClassifierElement | | | | | | | +--MeterService | | | | | | | | | +--AverageRateMeterService | | | | | | | | | +--EWMAMeterService | | | | | | | | | +--TokenBucketMeterService | | | | | | | +--MarkerService | | | | | | | | | +--PreambleMarkerService | | | | | | | | | +--TOSMarkerService | | | | | | | | | +--DSCPMarkerService | | | | |
+--ManagedElement (CIMCORE) | +--ManagedSystemElement (CIMCORE) | | | +--LogicalElement (CIMCORE) | | | +--Service (CIMCORE) | | | | | +--ConditioningService | | | | | | | +--ClassifierService | | | | | | | | | +--ClassifierElement | | | | | | | +--MeterService | | | | | | | | | +--AverageRateMeterService | | | | | | | | | +--EWMAMeterService | | | | | | | | | +--TokenBucketMeterService | | | | | | | +--MarkerService | | | | | | | | | +--PreambleMarkerService | | | | | | | | | +--TOSMarkerService | | | | | | | | | +--DSCPMarkerService | | | | |
(continued from previous page; the first four elements are repeated for convenience)
(从上一页继续;前四个元素为方便起见重复)
+--ManagedElement (CIMCORE) | +--ManagedSystemElement (CIMCORE) | | | +--LogicalElement (CIMCORE) | | | +--Service (CIMCORE) | | | | +--8021QMarkerService | | | | | | | +--DropperService | | | | | | | | | +--HeadTailDropperService | | | | | | | | | +--RedDropperService | | | | | | | +--QueuingService | | | | | | | +--PacketSchedulingService | | | | | | | +--NonWorkConservingSchedulingService | | | | | +--QoSService | | | | | | | +--DiffServService | | | | | | | | | +--AFService | | | | | | | +--FlowService | | | | | +--DropThresholdCalculationService | | | +--FilterEntryBase [PCIME] | | | | | +--IPHeaderFilter [PCIME] | | | | | +--8021Filter [PCIME] | | | | | +--PreambleFilter | | | +--FilterList [PCIME] | | | +--ServiceAccessPoint (CIMCORE) | | | +--ProtocolEndpoint
+--ManagedElement (CIMCORE) | +--ManagedSystemElement (CIMCORE) | | | +--LogicalElement (CIMCORE) | | | +--Service (CIMCORE) | | | | +--8021QMarkerService | | | | | | | +--DropperService | | | | | | | | | +--HeadTailDropperService | | | | | | | | | +--RedDropperService | | | | | | | +--QueuingService | | | | | | | +--PacketSchedulingService | | | | | | | +--NonWorkConservingSchedulingService | | | | | +--QoSService | | | | | | | +--DiffServService | | | | | | | | | +--AFService | | | | | | | +--FlowService | | | | | +--DropThresholdCalculationService | | | +--FilterEntryBase [PCIME] | | | | | +--IPHeaderFilter [PCIME] | | | | | +--8021Filter [PCIME] | | | | | +--PreambleFilter | | | +--FilterList [PCIME] | | | +--ServiceAccessPoint (CIMCORE) | | | +--ProtocolEndpoint
(continued from previous page; the first four elements are repeated for convenience)
(从上一页继续;前四个元素为方便起见重复)
+--ManagedElement (CIMCORE) | +--ManagedSystemElement (CIMCORE) | | | +--LogicalElement (CIMCORE) | | | +--Service (CIMCORE) | +--Collection (CIMCORE) | | | +--CollectionOfMSEs (CIMCORE) | | | +--BufferPool | +--SchedulingElement | +--AllocationSchedulingElement | +--WRRSchedulingElement | +--PrioritySchedulingElement | +--BoundedPrioritySchedulingElement
+--ManagedElement (CIMCORE) | +--ManagedSystemElement (CIMCORE) | | | +--LogicalElement (CIMCORE) | | | +--Service (CIMCORE) | +--Collection (CIMCORE) | | | +--CollectionOfMSEs (CIMCORE) | | | +--BufferPool | +--SchedulingElement | +--AllocationSchedulingElement | +--WRRSchedulingElement | +--PrioritySchedulingElement | +--BoundedPrioritySchedulingElement
Figure 9. Class Inheritance Hierarchy
图9。类继承层次结构
The inheritance hierarchy for the associations defined in this document is shown in Figure 10.
本文档中定义的关联的继承层次结构如图10所示。
+--Dependency (CIMCORE) | | | +--ServiceSAPDependency (CIMCORE) | | | | | +--IngressConditioningServiceOnEndpoint | | | | | +--EgressConditioningServiceOnEndpoint | | | +--HeadTailDropQueueBinding | | | +--CalculationBasedOnQueue | | | +--ProvidesServiceToElement (CIMCORE) | | | | | +--ServiceServiceDependency (CIMCORE) | | | | | +--CalculationServiceForDropper | | | +--QueueAllocation | | | +--ClassifierElementUsesFilterList | +--AFRelatedServices | +--NextService | | | +--NextServiceAfterClassifierElement | | | +--NextScheduler | | | +--FailNextScheduler | +--NextServiceAfterMeter | +--QueueToSchedule | +--SchedulingServiceToSchedule
+--Dependency (CIMCORE) | | | +--ServiceSAPDependency (CIMCORE) | | | | | +--IngressConditioningServiceOnEndpoint | | | | | +--EgressConditioningServiceOnEndpoint | | | +--HeadTailDropQueueBinding | | | +--CalculationBasedOnQueue | | | +--ProvidesServiceToElement (CIMCORE) | | | | | +--ServiceServiceDependency (CIMCORE) | | | | | +--CalculationServiceForDropper | | | +--QueueAllocation | | | +--ClassifierElementUsesFilterList | +--AFRelatedServices | +--NextService | | | +--NextServiceAfterClassifierElement | | | +--NextScheduler | | | +--FailNextScheduler | +--NextServiceAfterMeter | +--QueueToSchedule | +--SchedulingServiceToSchedule
Figure 10. Association Class Inheritance Hierarchy
图10。关联类继承层次结构
The inheritance hierarchy for the aggregations defined in this document is shown in Figure 11.
本文档中定义的聚合的继承层次结构如图11所示。
+--MemberOfCollection (CIMCORE) | | | +--CollectedBufferPool | +--Component (CIMCORE) | | | +--ServiceComponent (CIMCORE) | | | | | +--QoSSubService | | | | | +--QoSConditioningSubService | | | | | +--ClassifierElementInClassifierService | | | +--EntriesInFilterList [PCIME] | +--ElementInSchedulingService
+--MemberOfCollection (CIMCORE) | | | +--CollectedBufferPool | +--Component (CIMCORE) | | | +--ServiceComponent (CIMCORE) | | | | | +--QoSSubService | | | | | +--QoSConditioningSubService | | | | | +--ClassifierElementInClassifierService | | | +--EntriesInFilterList [PCIME] | +--ElementInSchedulingService
Figure 11. Aggregation Class Inheritance Hierarchy
图11。聚合类继承层次结构
This section presents the classes and properties that make up the Information Model for describing QoS-related functionality in network devices, including hosts. These definitions are derived from definitions in the CIM Core model [CIM]. Only the QoS-related classes are defined in this document. However, other classes drawn from the CIM Core model, as well as from [PCIME], are described briefly. The reader is encouraged to look at [CIM] and at [PCIME] for further information. Associations and aggregations are defined in Section 4.4.
本节介绍构成信息模型的类和属性,用于描述网络设备(包括主机)中与QoS相关的功能。这些定义源自CIM核心模型[CIM]中的定义。本文档中仅定义了与QoS相关的类。但是,对从CIM核心模型以及[PCIME]中提取的其他类进行了简要描述。鼓励读者查看[CIM]和[PCIME]以了解更多信息。第4.4节定义了关联和聚合。
This is an abstract class defined in the Core Model of CIM. It is the root of the entire class inheritance hierarchy in CIM. Among the associations that refer to it are two that are subclassed in this document: Dependency and MemberOfCollection, which is an aggregation. ManagedElement's properties are Caption and Description. Both are free-form strings to describe an instantiated object. Please refer to [CIM] for the full definition of this class.
这是CIM核心模型中定义的抽象类。它是CIM中整个类继承层次结构的根。引用它的关联中有两个子类:Dependency和MemberOfCollection,这是一个聚合。ManagedElement的属性是标题和描述。两者都是描述实例化对象的自由格式字符串。有关此类的完整定义,请参阅[CIM]。
This is an abstract class defined in the Core Model of CIM; it is a subclass of ManagedElement. ManagedSystemElement serves as the base class for the PhysicalElement and LogicalElement class hierarchies. LogicalElement, in turn, is the base class for a number of important CIM hierarchies, including System. Any distinguishable component of a System is a candidate for inclusion in this class hierarchy, including physical components (e.g., chips and cards) and logical components (e.g., software components, services, and other objects).
这是CIM核心模型中定义的抽象类;它是ManagedElement的一个子类。ManagedSystemElement用作PhysicalElement和LogicalElement类层次结构的基类。反过来,LogicalElement是许多重要CIM层次结构的基类,包括System。系统的任何可区分组件都是此类层次结构中的候选组件,包括物理组件(如芯片和卡)和逻辑组件(如软件组件、服务和其他对象)。
None of the associations in which this class participates is used directly in the QoS device state model. However, the aggregation Component, which relates one ManagedSystemElement to another, is the base class for the two aggregations that form the core of the QoS device state model: QoSSubService and QoSConditioningSubService. Similarly, the association ProvidesServiceToElement, which relates a ManagedSystemElement to a Service, is the base class for the model's CalculationServiceForDropper association.
此类参与的任何关联都不会直接用于QoS设备状态模型。但是,将一个ManagedSystemElement与另一个ManagedSystemElement关联的聚合组件是构成QoS设备状态模型核心的两个聚合的基类:QoSSubService和QosConditionSubService。类似地,关联ProviderServiceToElement(将ManagedSystemElement与服务关联)是模型的CalculationServiceForDropper关联的基类。
Please refer to [CIM] for the full definition of this class.
有关此类的完整定义,请参阅[CIM]。
This is an abstract class defined in the Core Model of CIM. It is a subclass of the ManagedSystemElement class, and is the base class for all logical components of a managed System, such as Files, Processes, or system capabilities in the form of Logical Devices and Services. None of the associations in which this class participates is relevant to the QoS device state model. Please refer to [CIM] for the full definition of this class.
这是CIM核心模型中定义的抽象类。它是ManagedSystemElement类的子类,是托管系统的所有逻辑组件的基类,例如文件、进程或逻辑设备和服务形式的系统功能。此类参与的所有关联都与QoS设备状态模型无关。有关此类的完整定义,请参阅[CIM]。
This is an abstract class defined in the Core Model of CIM. It is a subclass of the LogicalElement class, and is the base class for all objects that represent a "service" or functionality in a System. A Service is a general-purpose object that is used to configure and manage the implementation of functionality. As noted above in section 4.3.2, this class participates in the ProvidesServiceToElement association. Please refer to [CIM] for the full definition of this class.
这是CIM核心模型中定义的抽象类。它是LogicalElement类的子类,是表示系统中“服务”或功能的所有对象的基类。服务是用于配置和管理功能实现的通用对象。如上文第4.3.2节所述,本课程参与ProviderServiceToElement协会。有关此类的完整定义,请参阅[CIM]。
This is a concrete subclass of the CIM Core class Service; it represents the ability to define how traffic is conditioned in the data-forwarding path of a device. The subclasses of
这是CIM核心类服务的一个具体子类;它表示定义在设备的数据转发路径中如何调节流量的能力。子类
ConditioningService define the particular types of conditioning that are done. Six fundamental types of conditioning are defined in this document. These are the services performed by a classifier, a meter, a marker, a dropper, a queue, and a scheduler. Other, more sophisticated types of conditioning may be defined in future documents.
ConditioningService定义完成的特定条件类型。本文件定义了六种基本的调节类型。这些是由分类器、计量器、标记器、滴管、队列和调度器执行的服务。其他更复杂的调节类型可能会在未来的文档中定义。
ConditioningService is a concrete class because at the time it was defined in CIM, its superclass was concrete. While this class can be instantiated, an instance of it would not accomplish anything, because the nature of the conditioning, and the parameters that control it, are specified only in the subclasses of ConditioningService.
ConditioningService是一个具体的类,因为在CIM中定义它时,它的超类是具体的。虽然这个类可以实例化,但它的实例不会完成任何事情,因为条件的性质和控制它的参数只在ConditioningService的子类中指定。
Two associations in which ConditioningService participates are critical to its usage in QoS - QoSConditioningSubService and NextService. QoSConditioningSubService aggregates ConditioningServices into a particular QoS service (such as AF), to describe the specific conditioning functionality that underlies that QoS service in a particular device. NextService indicates the subsequent conditioning service(s) for different traffic streams.
ConditionService参与的两个关联对其在QoS中的使用至关重要—QosConditionSubService和NextService。QosConditionSubservice将条件服务聚合到特定QoS服务(如AF)中,以描述特定设备中作为QoS服务基础的特定条件功能。NextService表示不同流量的后续调节服务。
The class definition is as follows:
类别定义如下:
NAME ConditioningService DESCRIPTION A concrete class to define how traffic is conditioned in the data forwarding path of a host or network device. DERIVED FROM Service TYPE Concrete PROPERTIES (none)
NAME ConditioningService DESCRIPTION一个具体类,用于定义如何在主机或网络设备的数据转发路径中调节流量。源自服务类型混凝土属性(无)
The concept of a Classifier comes from [DSMODEL]. ClassifierService is a concrete class that represents a logical entity in an ingress or egress interface of a device, that takes a single input stream, and sorts it into one or more output streams. The sorting is done by a set of filters that select packets based on the packet contents, or possibly based on other attributes associated with the packet. Each output stream is the result of matching a particular filter.
分类器的概念来自[DSMODEL]。ClassifierService是一个具体的类,表示设备入口或出口接口中的逻辑实体,它接受单个输入流,并将其排序为一个或多个输出流。排序由一组过滤器完成,这些过滤器基于包内容或可能基于与包相关联的其他属性选择包。每个输出流都是匹配特定过滤器的结果。
The representation of classifiers in QDDIM is closely related to that presented in [DSMIB] and [DSMODEL]. Rather than being linked directly to its FilterLists, a classifier is modeled here as an aggregation of ClassifierElements. Each of these ClassifierElements is then linked to a single FilterList, by the association ClassifierElementUsesFilterList.
QDDIM中分类器的表示与[DSMIB]和[DSMODEL]中的表示密切相关。分类器不是直接链接到其过滤器列表,而是在这里建模为分类器关联的聚合。然后,通过关联ClassifiedRelationUsesFilterList将这些ClassifiedRelation中的每一个链接到一个FilterList。
A Classifier is modeled as a subclass of ConditioningService so that it can be aggregated into a QoSService (using the QoSConditioningSubService aggregation), and can use the NextService association to identify the subsequent ConditioningService objects for the different traffic streams.
分类器被建模为ConditionService的子类,以便可以将其聚合到QoSService(使用QOSConditionSubService聚合),并可以使用NextService关联来识别不同流量流的后续ConditionService对象。
ClassifierService is designed to allow hierarchical classification. When hierarchical classification is used, a ClassifierElement may point to another ClassifierService. When used for this purpose, the ClassifierElement must not use the ClassifierElementUsesFilterList association.
ClassifierService旨在允许分层分类。当使用分层分类时,ClassifierRelation可能指向另一个ClassifierService。用于此目的时,ClassifiedRelation不得使用ClassifiedRelationUsesFilterList关联。
The class definition is as follows:
类别定义如下:
NAME ClassifierService DESCRIPTION A concrete class describing how an input traffic stream is sorted into multiple output streams using one or more filters. DERIVED FROM ConditioningService TYPE Concrete PROPERTIES (none)
NAME ClassifierService DESCRIPTION一个具体类,描述如何使用一个或多个过滤器将输入流量流排序为多个输出流。源自条件服务类型具体属性(无)
The concept of a ClassifierElement comes from [DSMIB]. This concrete class represents the linkage, within a single ClassifierService, between a FilterList that specifies a set of criteria for selecting packets from the stream of packets coming into the ClassifierService, and the next ConditioningService to which the selected packets go after they leave the ClassifierService. ClassifierElement has no properties of its own. It is present to serve as the anchor for an aggregation with its classifier, and for associations with its FilterList and its next ConditioningService.
分类关系的概念来自[DSMIB]。这个具体的类表示单个ClassifierService中的FilterList(该FilterList指定了一组用于从进入ClassifierService的数据包流中选择数据包的标准)与所选数据包离开ClassifierService后前往的下一个ConditionService之间的链接。分类关联没有自己的属性。它的存在是为了充当聚合及其分类器的锚,以及与过滤器列表及其下一个ConditionService的关联。
When a ClassifierElement is associated with a ClassifierService through the NextServiceAfterClassifierElement association, the ClassifierElement may not use the ClassifierElementUsesFilterList association. Further, when a ClassifierElement is associated with a ClassifierService as described above, the order of processing of the associated ClassifierService is a function of the ClassifierOrder property of the ClassifierElementInClassifierService aggregation. For example, lets assume the following:
当ClassifiedRelation通过NextServiceAfterClassifiedRelation关联与ClassifierService关联时,ClassifiedRelation可能不会使用ClassifiedRelationUsesFilterList关联。此外,当如上所述ClassifierRelation与ClassifierService关联时,关联的ClassifierService的处理顺序是ClassifierRelationInClassifierService聚合的ClassifierOrder属性的函数。例如,让我们假设以下情况:
1. ClassifierService (C1) aggregates ClassifierElements (E1), (E2) and (E3), with relative ClassifierOrder values of 1, 2, and 3.
1. ClassifierService(C1)聚合ClassifierRelation(E1)、(E2)和(E3),相对ClassifierOrder值为1、2和3。
2. ClassifierElements (E1) and (E3) associations to FilterLists (F1) and (F3) respectively using the ClassifierElementUsesFilterList association.
2. 使用ClassifiedRelationUseSFilterList关联,ClassifiedRelations(E1)和(E3)关联分别与过滤器列表(F1)和(F3)关联。
3. (E1) & (E3) are associated with Meters (M1) and (M3) through their respective NextServiceAfterClassifierElement associations.
3. (E1)和(E3)通过各自的NextService关联与仪表(M1)和(M3)关联。
4. (E2) is associated with ClassifierService (C2) through its NextServiceAfterClassifierElement association.
4. (E2)通过其NextServiceAfterClassifiedRelation关联与ClassifierService(C2)关联。
5. ClassifierService (C2) aggregates ClassifierElements (E4) and (E5) with relative ClassifierOrder values of 1 and 2.
5. ClassifierService(C2)使用相对ClassifierOrder值1和2聚合ClassifierRelation(E4)和(E5)。
6. ClassifierElements (E4) and (E5) have associations to FilterLists (F4) and (F5) respectively using the ClassifierElementUsesFilterList association.
6. ClassifiedRelations(E4)和(E5)分别使用ClassifiedRelationUseSFilterList关联与FilterList(F4)和(F5)关联。
In this example, packet processing would match FilterLists in the order of (F1), (F4), (F5), and (F3).
在此示例中,数据包处理将按照(F1)、(F4)、(F5)和(F3)的顺序匹配过滤器列表。
The class definition is as follows:
类别定义如下:
NAME ClassifierElement DESCRIPTION A concrete class representing the process by which a classifier uses a filter to select packets to forward to a specific next conditioning service. DERIVED FROM ClassifierService TYPE Concrete PROPERTIES (none)
NAME ClassificateRelation DESCRIPTION一个具体的类,表示分类器使用筛选器选择要转发到特定下一个服务的数据包的过程。源自ClassifierService类型混凝土属性(无)
This is a concrete class that represents the metering of network traffic. Metering is the function of monitoring the arrival times of packets of a traffic stream, and determining the level of conformance of each packet with respect to a pre-established traffic profile. A meter has the ability to invoke different ConditioningServices for conforming and non-conforming traffic. Traffic leaving a meter may be further conditioned (e.g., dropped or queued) by routing the packet to another conditioning element. Please see [DSMODEL] for more information on metering.
这是一个表示网络流量计量的具体类。计量是监视业务流的分组的到达时间,并确定每个分组相对于预先建立的业务简档的一致性级别的功能。仪表能够为符合和不符合要求的流量调用不同的条件服务。通过将分组路由到另一个调节元件,可以进一步调节离开计量器的流量(例如,丢弃或排队)。有关计量的更多信息,请参见[DSMODEL]。
This class is the base class for defining different types of meters. As such, it contains common properties that all meter subclasses share. It is modeled as a ConditioningService so that it can be aggregated into a QoSService (using the QoSConditioningSubService
此类是定义不同类型仪表的基类。因此,它包含所有meter子类共享的公共属性。将其建模为条件服务,以便将其聚合为QoSService(使用QOSConditionSubService)
association), to indicate that its functionality underlies that QoS service. MeterService also participates in the NextServiceAfterMeter association, to identify the subsequent ConditioningService objects for conforming and non-conforming traffic.
关联),以指示其功能是该QoS服务的基础。MeterService还参与NextServiceAfterMeter关联,以确定一致性和不一致性流量的后续条件服务对象。
The class definition is as follows:
类别定义如下:
NAME MeterService DESCRIPTION A concrete class describing the monitoring of traffic with respect to a pre-established traffic profile. DERIVED FROM ConditioningService TYPE Concrete PROPERTIES MeterType, OtherMeterType, ConformanceLevels
NAME MeterService DESCRIPTION是一个具体的类,用于描述与预先建立的流量配置文件相关的流量监控。源自条件服务类型混凝土属性MeterType、OtherMeterType、ConformanceLevel
Note: The MeterType property and the MeterService subclasses provide similar information. The MeterType property is defined for query purposes and for future expansion. It is possible that not all MeterServices will require a subclass to define them. In these cases, MeterService will be instantiated directly, and the MeterType property will provide the only way of identifying the type of the meter.
注意:MeterType属性和MeterService子类提供了类似的信息。MeterType属性是为查询和将来的扩展而定义的。可能并非所有MeterService都需要子类来定义它们。在这些情况下,将直接实例化MeterService,MeterType属性将提供标识仪表类型的唯一方法。
This property is an enumerated 16-bit unsigned integer that is used to specify the particular type of meter represented by an instance of MeterService. The following enumeration values are defined:
此属性是一个枚举的16位无符号整数,用于指定由MeterService实例表示的特定类型的仪表。定义了以下枚举值:
1 - Other 2 - Average Rate Meter 3 - Exponentially Weighted Moving Average Meter 4 - Token Bucket Meter
1-其他2-平均费率表3-指数加权移动平均费率表4-令牌桶表
Note: if the value of MeterType is not one of these four values, it SHOULD be interpreted as if it had the value '1' (Other).
注意:如果MeterType的值不是这四个值之一,则应将其解释为具有值“1”(其他)。
This is a string property that defines a vendor-specific description of a type of meter. It is used when the value of the MeterType property in the instance is equal to 1.
这是一个字符串属性,用于定义特定于供应商的仪表类型描述。当实例中MeterType属性的值等于1时使用。
This property is a 16-bit unsigned integer. It indicates the number of conformance levels supported by the meter. For example, when only "in profile" versus "out of profile" metering is supported, ConformanceLevels is equal to 2.
此属性是一个16位无符号整数。它表示仪表支持的一致性级别的数量。例如,当仅支持“配置文件内”和“配置文件外”计量时,ConformanceLevel等于2。
This is a concrete subclass of MeterService that represents a simple meter, called an Average Rate Meter. This type of meter measures the average rate at which packets are submitted to it over a specified time. Packets are defined as conformant if their average arrival rate does not exceed the specified measuring rate of the meter. Any packet that causes the specified measuring rate to be exceeded is defined to be non-conforming. For more information, please see [DSMODEL].
这是MeterService的一个具体子类,它表示一个简单的表,称为平均速率表。这种类型的仪表测量在指定时间内向其提交数据包的平均速率。如果数据包的平均到达率不超过仪表的规定测量率,则数据包被定义为符合。导致超过规定测量速率的任何数据包被定义为不合格。有关更多信息,请参阅[DSMODEL]。
The class definition is as follows:
类别定义如下:
NAME AverageRateMeterService DESCRIPTION A concrete class classifying traffic as either conforming or non-conforming, depending on whether the arrival of a packet causes the average arrival rate to exceed a pre-determined value. DERIVED FROM MeterService TYPE Concrete PROPERTIES AverageRate, DeltaInterval
NAME AverageRateMeterService DESCRIPTION一个具体的类,根据数据包的到达是否导致平均到达率超过预先确定的值,将流量分类为合格或不合格。源自MeterService类型混凝土属性AverageRate,DeltaInterval
This is an unsigned 32-bit integer that defines the rate used to determine whether admitted packets are in conformance or not. The value is specified in kilobits per second.
这是一个无符号32位整数,它定义了用于确定允许的数据包是否一致的速率。该值以每秒千位为单位指定。
This is an unsigned 64-bit integer that defines the time period over which the average measurement should be taken. The value is specified in microseconds.
这是一个无符号的64位整数,定义了平均测量时间段。该值以微秒为单位指定。
This is a concrete subclass of the MeterService class that represents an exponentially weighted moving average meter. This meter is a simple low-pass filter that measures the rate of incoming packets
这是MeterService类的一个具体子类,它表示一个指数加权移动平均仪表。此仪表是一个简单的低通滤波器,用于测量传入数据包的速率
over a small, fixed sampling interval. Any admitted packet that pushes the average rate over a pre-defined limit is defined to be non-conforming. Please see [DSMODEL] for more information.
在一个小的、固定的采样间隔内。任何将平均速率推过预定义限制的已接纳数据包都被定义为不合格。有关更多信息,请参阅[DSMODEL]。
The class definition is as follows:
类别定义如下:
NAME EWMAMeterService DESCRIPTION A concrete class classifying admitted traffic as either conforming or non-conforming, depending on whether the arrival of a packet causes the average arrival rate in a small fixed sampling interval to exceed a pre-determined value or not. DERIVED FROM MeterService TYPE Concrete PROPERTIES AverageRate, DeltaInterval, Gain
名称EWAMETERSERVICE DESCRIPTION一个具体的类,根据数据包的到达是否导致小的固定采样间隔内的平均到达率超过预先确定的值,将允许的流量分类为合格或不合格。源自MeterService类型混凝土属性AverageRate、DeltaInterval、Gain
This property is an unsigned 32-bit integer that defines the average rate against which the sampled arrival rate of packets should be measured. Any packet that causes the sampled rate to exceed this rate is deemed non-conforming. The value is specified in kilobits per second.
此属性是一个无符号32位整数,它定义了测量数据包采样到达率的平均速率。任何导致采样率超过此速率的数据包都被视为不合格。该值以每秒千位为单位指定。
This property is an unsigned 64-bit integer that defines the sampling interval used to measure the arrival rate. The calculated rate is averaged over this interval and checked against the AverageRate property. All packets whose computed average arrival rate is less than the AverageRate are deemed conforming.
此属性是一个无符号64位整数,定义用于测量到达率的采样间隔。计算的速率在此间隔内取平均值,并根据AverageRate属性进行检查。计算出的平均到达率小于平均到达率的所有数据包都被视为合格。
The value is specified in microseconds.
该值以微秒为单位指定。
This property is an unsigned 32-bit integer representing the reciprocal of the time constant (e.g., frequency response) of what is essentially a simple low-pass filter. For example, the value 64 for this property represents a time constant value of 1/64.
此属性是一个无符号32位整数,表示基本上是简单低通滤波器的时间常数(例如频率响应)的倒数。例如,此属性的值64表示时间常量值1/64。
This is a concrete subclass of the MeterService class that represents the metering of network traffic using a token bucket meter. Two types of token bucket meters are defined using this class - a simple, two-parameter bucket meter, and a multi-stage meter.
这是MeterService类的一个具体子类,表示使用令牌桶计量器计量网络流量。使用该类定义了两种类型的令牌桶式流量计-简单的双参数桶式流量计和多级流量计。
A simple token bucket usually has two parameters, an average token rate and a burst size, and has two conformance levels: "conforming" and "non-conforming". This class also defines an excess burst size, which enables the meter to have three conformance levels ("conforming", "partially conforming", and "non-conforming"). In this case, packets that exceed the excess burst size are deemed non-conforming, while packets that exceed the smaller burst size but are less than the excess burst size are deemed partially conforming. Operation of these meters is described in [DSMODEL].
一个简单的令牌桶通常有两个参数,平均令牌速率和突发大小,并且有两个一致性级别:“一致性”和“不一致性”。该类还定义了一个额外的突发大小,使仪表具有三个一致性级别(“一致性”、“部分一致性”和“不一致性”)。在这种情况下,超过多余突发大小的分组被视为不合格,而超过较小突发大小但小于多余突发大小的分组被视为部分合格。[DSMODEL]中描述了这些仪表的操作。
The class definition is as follows:
类别定义如下:
NAME TokenBucketMeterService DESCRIPTION A concrete class classifying admitted traffic with respect to a token bucket. Either two or three levels of conformance can be defined. DERIVED FROM MeterService TYPE Concrete PROPERTIES AverageRate, PeakRate, BurstSize, ExcessBurstSize
NAME TokenBucketMeterService DESCRIPTION是一个具体的类,它根据令牌桶对允许的流量进行分类。可以定义两个或三个一致性级别。源自MeterService类型混凝土属性AverageRate、PeakRate、BurstSize、ExcessBurstSize
This property is an unsigned 32-bit integer that specifies the committed rate of the meter. The value is expressed in kilobits per second.
此属性是一个无符号32位整数,用于指定仪表的提交速率。该值以每秒千位表示。
This property is an unsigned 32-bit integer that specifies the peak rate of the meter. The value is expressed in kilobits per second.
此属性是一个无符号32位整数,用于指定仪表的峰值速率。该值以每秒千位表示。
This property is an unsigned 32-bit integer that specifies the maximum number of tokens available for the committed rate (specified by the AverageRate property). The value is expressed in kilobytes.
此属性是一个无符号32位整数,用于指定提交速率(由AverageRate属性指定)的最大可用令牌数。该值以KB表示。
This property is an unsigned 32-bit integer that specifies the maximum number of tokens available for the peak rate (specified by the PeakRate property). The value is expressed in kilobytes.
此属性是一个无符号32位整数,指定峰值速率(由PeakRate属性指定)可用的最大令牌数。该值以KB表示。
This is a concrete class that represents the general process of marking some field in a network packet with some value. Subclasses of MarkerService identify particular fields to be marked, and introduce properties to represent the values to be used in marking these fields. Markers are usually invoked as a result of a preceding classifier match. Operation of markers of various types is described in [DSMODEL].
这是一个具体的类,它表示用某个值标记网络数据包中某个字段的一般过程。MarkerService的子类标识要标记的特定字段,并引入属性来表示标记这些字段时要使用的值。标记通常作为前面分类器匹配的结果调用。[DSMODEL]中描述了各种类型标记的操作。
MarkerService is a concrete class because at the time it was defined in CIM, its superclass was concrete. While this class can be instantiated, an instance of it would not accomplish anything, because both the field to be marked and the value to be used to mark it are specified only in subclasses of MarkerService.
MarkerService是一个具体的类,因为在CIM中定义它时,它的超类是具体的。虽然这个类可以实例化,但它的实例不会完成任何事情,因为要标记的字段和用于标记它的值都只在MarkerService的子类中指定。
MarkerService is modeled as a ConditioningService so that it can be aggregated into a QoSService (using the QoSConditioningSubService association) to indicate that its functionality underlies that QoS service. It participates in the NextService association to identify the subsequent ConditioningService object that acts on traffic after it has been marked by the marker.
MarkerService被建模为一个ConditionService,以便可以将其聚合到QoS服务(使用QosConditionSubService关联)中,以指示其功能是该QoS服务的基础。它参与NextService关联,以标识在标记标记流量后作用于该流量的后续ConditioningService对象。
The class definition is as follows:
类别定义如下:
NAME MarkerService DESCRIPTION A concrete class representing the general process of marking a selected field in a packet with a specified value. Packets are marked in order to control the conditioning that they will subsequently receive. DERIVED FROM ConditioningService TYPE Concrete PROPERTIES (none)
名称标记服务描述一个具体的类,表示用指定值标记数据包中选定字段的一般过程。对数据包进行标记是为了控制它们随后将接收到的条件。源自条件服务类型具体属性(无)
This is a concrete class that models the storing of traffic-conditioning results in a packet preamble. See Section 3.8.3 for a discussion of how, and why, QDDIM models the capability to store these results in a packet preamble. An instance of
这是一个具体的类,用于在数据包前导中对流量调节结果的存储进行建模。参见第3.8.3节,了解QDDIM如何以及为什么对将这些结果存储在数据包前导中的能力进行建模的讨论。实例
PreambleMarkerService appends to a packet preamble a two-part string of the form "<type>,<value>". Section 3.8.3 provides a list of the <type> strings defined by QDDIM. Implementations may support other <type>'s in addition to these.
PreambleMarkerService将一个由两部分组成的字符串附加到数据包前导,格式为“<type>,<value>”。第3.8.3节提供了QDDIM定义的<type>字符串列表。除此之外,实现可能还支持其他<type>。
The class definition is as follows:
类别定义如下:
NAME PreambleMarkerService DESCRIPTION A concrete class representing the saving of traffic-conditioning results in a packet preamble. DERIVED FROM MarkerService TYPE Concrete PROPERTIES FilterItemList[ ]
NAME PreambleMarkerService DESCRIPTION一个具体类,表示在数据包前导中保存流量调节结果。派生自MarkerService类型的具体属性FilterItemList[]
This property is an ordered list of strings, where each string has the format "<type>,<value>". See Section 3.8.3 for a list of <type>'s defined in QDDIM, and the nature of the associated <value> for each of these types.
此属性是字符串的有序列表,其中每个字符串的格式为“<type>,<value>”。参见第3.8.3节,了解QDDIM中定义的<type>,以及每种类型相关<value>的性质。
This is a concrete class that represents the marking of the ToS field in the IPv4 packet header [R791]. Following common practice, the value to be written into the field is represented as an unsigned 8- bit integer.
这是一个具体的类,表示IPv4数据包头[R791]中ToS字段的标记。按照惯例,要写入字段的值表示为无符号8位整数。
The class definition is as follows:
类别定义如下:
NAME ToSMarkerService DESCRIPTION A concrete class representing the process of marking the type of service (ToS) field in the IPv4 packet header with a specified value. Packets are marked in order to control the conditioning that they will subsequently receive. DERIVED FROM MarkerService TYPE Concrete PROPERTIES ToSValue
NAME-ToSMarkerService DESCRIPTION一个具体类,表示使用指定值标记IPv4数据包头中的服务类型(ToS)字段的过程。对数据包进行标记是为了控制它们随后将接收到的条件。源自MarkerService类型的具体属性值
This property is an unsigned 8-bit integer, representing a value to be used for marking the type of service (ToS) field in the IPv4 packet header. The ToS field is defined to be a complete octet, so the range for this property is 0..255. Some implementations, however, require that the lowest-order bit in the ToS field always be '0'. Such an implementation is consequently unable to support an odd TosValue.
此属性是无符号8位整数,表示用于标记IPv4数据包标头中的服务类型(ToS)字段的值。ToS字段定义为完整的八位字节,因此此属性的范围为0..255。但是,有些实现要求ToS字段中的最低阶位始终为“0”。因此,这样的实现无法支持奇数值。
This is a concrete class that represents the marking of the differentiated services codepoint (DSCP) within the DS field in the IPv4 and IPv6 packet headers, as defined in [R2474]. Following common practice, the value to be written into the field is represented as an unsigned 8-bit integer.
这是一个具体的类,表示IPv4和IPv6数据包头中DS字段内区分服务代码点(DSCP)的标记,如[R2474]中所定义。按照惯例,要写入字段的值表示为无符号8位整数。
The class definition is as follows:
类别定义如下:
NAME DSCPMarkerService DESCRIPTION A concrete class representing the process of marking the DSCP field in a packet with a specified value. Packets are marked in order to control the conditioning that they will subsequently receive. DERIVED FROM MarkerService TYPE Concrete PROPERTIES DSCPValue
名称DSCPMarkerService DESCRIPTION一个具体类,表示用指定值标记数据包中的DSCP字段的过程。对数据包进行标记是为了控制它们随后将接收到的条件。源自MarkerService类型的具体属性DSCPValue
This property is an unsigned 8-bit integer, representing a value to be used for marking the DSCP within the DS field in an IPv4 or IPv6 packet header. Since the DSCP consists of 6 bits, the values for this property are limited to the range 0..63. When the DSCP is marked, the remaining two bit in the DS field are left unchanged.
此属性是无符号8位整数,表示用于在IPv4或IPv6数据包标头的DS字段中标记DSCP的值。由于DSCP由6位组成,因此此属性的值限制在0..63的范围内。标记DSCP时,DS字段中剩余的两位保持不变。
This is a concrete class that represents the marking of the user priority field defined in the IEEE 802.1Q specification [IEEE802Q]. Following common practice, the value to be written into the field is represented as an unsigned 8-bit integer.
这是一个具体的类,表示IEEE 802.1Q规范[IEEE802Q]中定义的用户优先级字段的标记。按照惯例,要写入字段的值表示为无符号8位整数。
The class definition is as follows:
类别定义如下:
NAME 8021QMarkerService DESCRIPTION A concrete class representing the process of marking the Priority field in an 802.1Q-compliant frame with a specified value. Frames are marked in order to control the conditioning that they will subsequently receive. DERIVED FROM MarkerService TYPE Concrete PROPERTIES PriorityValue
名称8021QMarkerService DESCRIPTION一个具体类,表示用指定值标记802.1Q兼容帧中优先级字段的过程。对框架进行标记,以控制其随后接收的调节。源自MarkerService类型混凝土属性优先级值
This property is an unsigned 8-bit integer, representing a value to be used for marking the Priority field in the 802.1Q header. Since the Priority field consists of 3 bits, the values for this property are limited to the range 0..7. When the Priority field is marked, the remaining bits in its octet are left unchanged.
此属性是无符号8位整数,表示用于标记802.1Q标头中优先级字段的值。由于优先级字段由3位组成,因此此属性的值限制在0..7的范围内。标记优先级字段时,其八位字节中的剩余位保持不变。
This is a concrete class that represents the ability to selectively drop network traffic, or to invoke another ConditioningService for further processing of traffic that is not dropped. This is the base class for different types of droppers. Droppers are distinguished by the algorithm that they use to drop traffic. Please see [DSMODEL] for more information about the various types of droppers. Note that this class encompasses both Absolute Droppers and Algorithmic Droppers from [DSMODEL].
这是一个具体的类,表示有选择地丢弃网络流量,或调用另一个ConditioningService以进一步处理未丢弃的流量的能力。这是不同类型的滴管的基类。滴管通过其用于丢弃流量的算法进行区分。有关各种滴管类型的更多信息,请参见[DSMODEL]。请注意,此类包含[DSMODEL]中的绝对滴管和算法滴管。
DropperService is modeled as a ConditioningService so that it can be aggregated into a QoSService (using the QoSConditioningSubService association) to indicate that its functionality underlies that QoS service. It participates in the NextService association to identify the subsequent ConditioningService object that acts on any remaining traffic that is not dropped.
DropperService被建模为一个ConditionService,这样就可以将其聚合到QoS服务中(使用QosConditionSubService关联),以表明其功能是该QoS服务的基础。它参与NextService关联,以标识对未丢弃的任何剩余流量起作用的后续ConditioningService对象。
NextService has special semantics for droppers, in addition to the general "what happens next" semantics that apply to all ConditioningServices. The queue(s) from which a particular dropper drops packets are identified by following chain(s) of NextService associations "rightwards" from the dropper until they reach a queue.
除了适用于所有ConditionServices的一般“下一步会发生什么”语义之外,NextService还有专门针对Dropper的语义。特定滴管从中丢弃数据包的队列通过从滴管“向右”跟随NextService关联链来标识,直到它们到达队列。
The class definition is as follows:
类别定义如下:
NAME DropperService DESCRIPTION A concrete base class describing the common characteristics of droppers. DERIVED FROM ConditioningService TYPE Concrete PROPERTIES DropperType, OtherDropperType, DropFrom
名称DropperService DESCRIPTION一个具体的基类,描述滴管的常见特性。派生自条件服务类型具体属性DropperType、OtherDropperType、DropFrom
Note: The DropperType property and the DropperService subclasses provide similar information. The DropperType property is defined for query purposes, as well as for those cases where a subclass of DropperService is not needed to model a particular type of dropper. For example, the Absolute Dropper defined in [DSMODEL] is modeled as an instance of the DropperService class with its DropperType set to '4' ("Absolute Dropper").
注意:DropperType属性和DropperService子类提供了类似的信息。DropperType属性是为查询目的定义的,也适用于不需要DropperService的子类来建模特定类型的滴管的情况。例如,[DSMODEL]中定义的绝对滴管被建模为DropperService类的实例,其DropperType设置为“4”(“绝对滴管”)。
This is an enumerated 16-bit unsigned integer that defines the type of dropper. Values include:
这是一个枚举的16位无符号整数,用于定义滴管的类型。价值包括:
1 - Other 2 - Random 3 - HeadTail 4 - Absolute Dropper
1-其他2-随机3-头尾4-绝对滴管
Note: if the value of DropperType is not one of these four values, it SHOULD be interpreted as if it had the value '1' (Other).
注意:如果DropperType的值不是这四个值之一,则应将其解释为具有值“1”(其他)。
This string property is used in conjunction with the DropperType property. When the value of DropperType is '1' (i.e., Other), then the name of the type of dropper appears in this property.
此字符串属性与DropperType属性一起使用。当DropperType的值为“1”(即其他)时,滴管类型的名称将显示在此属性中。
This is an unsigned 16-bit integer enumeration that indicates the point in the associated queue from which packets should be dropped. Defined enumeration values are:
这是一个无符号16位整数枚举,指示关联队列中应丢弃数据包的点。定义的枚举值为:
o unknown(0) o head(1) o tail(2)
o 未知(0)o头(1)o尾(2)
Note: if the value of DropFrom is '0' (unknown), or if it is not one of the three values listed here, then packets MAY be dropped from any location in the associated queue.
注意:如果DropFrom的值为“0”(未知),或者如果它不是此处列出的三个值之一,则可能会从关联队列中的任何位置丢弃数据包。
This is a concrete class that represents the threshold information of a head or tail dropper. The inherited property DropFrom indicates whether a particular instance of this class represents a head dropper or a tail dropper.
这是一个具体的类,表示头滴管或尾滴管的阈值信息。继承的属性DropFrom指示此类的特定实例是表示头滴管还是尾滴管。
A head dropper always examines the same queue from which it drops packets, and this queue is always related to the dropper as the following service in the NextService association.
头滴管始终检查它从中丢弃数据包的同一队列,并且此队列始终与滴管相关,作为NextService关联中的以下服务。
The class definition is as follows:
类别定义如下:
NAME HeadTailDropperService DESCRIPTION A concrete class used to describe a head or tail dropper. DERIVED FROM DropperService TYPE Concrete PROPERTIES QueueThreshold
名称HeadTailDropperService DESCRIPTION用于描述头或尾滴管的具体类。派生自DropperService类型混凝土属性队列阈值
This is an unsigned 32-bit integer that indicates the queue depth at which traffic will be dropped. For a tail dropper, all newly arriving traffic is dropped. For a head dropper, packets at the front of the queue are dropped to make room for new packets, which are added at the end. The value is expressed in bytes.
这是一个无符号32位整数,指示丢弃流量的队列深度。对于尾部滴管,将丢弃所有新到达的流量。对于头滴管,队列前面的数据包被丢弃,以便为新数据包腾出空间,新数据包被添加到队列的末尾。该值以字节表示。
This is a concrete class that represents the ability to drop network traffic using a Random Early Detection (RED) algorithm. This algorithm is described in [RED]. The purpose of a RED algorithm is to avoid congestion (as opposed to managing congestion). Instead of waiting for the queues to fill up, and then dropping large numbers of packets, RED works by monitoring the average queue depth. When the queue depth exceeds a minimum threshold, packets are randomly discarded. These discards cause TCP to slow its transmission rate for those connections that experienced the packet discards. Other TCP connections are not affected by these discards. Please see [DSMODEL] for more information about a dropper.
这是一个具体的类,表示使用随机早期检测(RED)算法丢弃网络流量的能力。该算法在[红色]中描述。RED算法的目的是避免拥塞(与管理拥塞相反)。RED不是等待队列填满,然后丢弃大量数据包,而是通过监视平均队列深度来工作。当队列深度超过最小阈值时,数据包将被随机丢弃。这些丢弃会导致TCP降低那些经历数据包丢弃的连接的传输速率。其他TCP连接不受这些丢弃的影响。有关滴管的更多信息,请参见[DSMODEL]。
A RED dropper always drops packets from a single queue, which is related to the dropper as the following service in the NextService association. The queue(s) examined by the drop algorithm are found by following the CalculationServiceForDropper association to find the dropper's DropThresholdCalculationService, and then following the CalculationBasedOnQueue association(s) to find the queue(s) being watched.
红色滴管总是从单个队列中丢弃数据包,该队列与滴管相关,作为NextService关联中的以下服务。通过遵循CalculationServiceForDropper关联查找dropper的DropThresholdCalculationService,然后遵循CalculationBasedOnQueue关联查找正在监视的队列,可以找到drop算法检查的队列。
The class definition is as follows:
类别定义如下:
NAME REDDropperService DESCRIPTION A concrete class used to describe dropping using the RED algorithm (or one of its variants). DERIVED FROM DropperService TYPE Concrete PROPERTIES MinQueueThreshold, MaxQueueThreshold, ThresholdUnits, StartProbability, StopProbability
名称REDDropperService DESCRIPTION一个具体类,用于描述使用RED算法(或其变体之一)进行的删除。源自DropperService类型具体属性MinQueueThreshold、MaxQueueThreshold、ThresholdUnits、StartProbability、StopperProbability
NOTE: In [DSMIB], there is a single diffServRandomDropTable, which represents the general category of random dropping. (RED is one type of random dropping, but there are also types of random dropping distinct from RED.) The REDDropperService class corresponds to the columns in the table that apply to the RED algorithm in particular.
注:在[DSMIB]中,有一个diffServRandomDropTable,表示随机丢弃的一般类别。(RED是一种随机丢弃类型,但也有不同于RED的随机丢弃类型。)REDDropperService类对应于表中特别适用于RED算法的列。
This is an unsigned 32-bit integer that defines the minimum average queue depth at which packets are subject to being dropped. The units are identified by the ThresholdUnits property. The slope of the drop probability function is described by the Start/StopProbability properties.
这是一个无符号32位整数,用于定义数据包被丢弃时的最小平均队列深度。单位由ThresholdUnits属性标识。下降概率函数的斜率由开始/停止概率特性描述。
This is an unsigned 32-bit integer that defines the maximum average queue length at which packets are subject to always being dropped, regardless of the dropping algorithm and probabilities being used. The units are identified by the ThresholdUnits property.
这是一个无符号32位整数,它定义了无论使用何种丢弃算法和概率,数据包总是被丢弃的最大平均队列长度。单位由ThresholdUnits属性标识。
This is an unsigned 16-bit integer enumeration that identifies the units for the MinQueueThreshold and MaxQueueThreshold properties. Defined enumeration values are:
这是一个无符号16位整数枚举,用于标识MinQueueThreshold和MaxQueueThreshold属性的单位。定义的枚举值为:
o bytes(1) o packets(2)
o 字节(1)o数据包(2)
Note: if the value of ThresholdUnits is not one of these two values, it SHOULD be interpreted as if it had the value '1' (bytes).
注意:如果ThresholdUnits的值不是这两个值中的一个,则应将其解释为具有值“1”(字节)。
This is an unsigned 32-bit integer; in conjunction with the StopProbability property, it defines the slope of the drop probability function. This function governs the rate at which packets are subject to being dropped, as a function of the queue length.
这是一个无符号32位整数;结合可停止性属性,它定义了下降概率函数的斜率。此函数根据队列长度控制数据包被丢弃的速率。
This property expresses a drop probability in drops per thousand packets. For example, the value 100 indicates a drop probability of 100 per 1000 packets, that is, 10%. Min and max values are 0 to 1000.
此属性表示每千个数据包的丢弃概率。例如,值100指示每1000个分组100的丢弃概率,即10%。最小值和最大值为0到1000。
This is an unsigned 32-bit integer; in conjunction with the StartProbability property, it defines the slope of the drop probability function. This function governs the rate at which packets are subject to being dropped, as a function of the queue length.
这是一个无符号32位整数;结合StartProbability属性,它定义了下降概率函数的斜率。此函数根据队列长度控制数据包被丢弃的速率。
This property expresses a drop probability in drops per thousand packets. For example, the value 100 indicates a drop probability of 100 per 1000 packets, that is, 10%. Min and max values are 0 to 1000.
此属性表示每千个数据包的丢弃概率。例如,值100指示每1000个分组100的丢弃概率,即10%。最小值和最大值为0到1000。
This is a concrete class that represents the ability to queue network traffic, and to specify the characteristics for determining long-term congestion. Please see [DSMODEL] for more information about queuing functionality.
这是一个具体的类,表示排队网络流量的能力,并指定确定长期拥塞的特征。有关排队功能的更多信息,请参阅[DSMODEL]。
QueuingService is modeled as a ConditioningService so that it can be aggregated into a QoSService (using the QoSConditioningSubService association) to indicate that its functionality underlies that QoS service.
QueuingService被建模为一个ConditionService,以便可以将其聚合到QoS服务中(使用QosConditionSubService关联),以指示其功能是该QoS服务的基础。
The class definition is as follows:
类别定义如下:
NAME QueuingService DESCRIPTION A concrete class describing the ability to queue network traffic and to specify the characteristics for determining long-term congestion. DERIVED FROM ConditioningService TYPE Concrete PROPERTIES CurrentQueueDepth, DepthUnits
名称QueuingService DESCRIPTION一个具体的类,描述将网络流量排队并指定用于确定长期拥塞的特征的能力。派生自ConditionService类型的具体属性CurrentQueueDepth,DepthUnits
This is an unsigned 32-bit integer, which functions as a (read-only) gauge representing the current depth of this one queue. This value may be important in diagnosing unexpected behavior by a DropThresholdCalculationService.
这是一个无符号32位整数,用作表示此队列当前深度的(只读)量表。此值在通过DropThresholdCalculationService诊断意外行为时可能很重要。
This is an unsigned 16-bit integer enumeration that identifies the units for the CurrentQueueDepth property. Defined enumeration values are:
这是一个无符号16位整数枚举,用于标识CurrentQueueDepth属性的单位。定义的枚举值为:
o bytes(1) o packets(2)
o 字节(1)o数据包(2)
Note: if the value of DepthUnits is not one of these two values, it SHOULD be interpreted as if it had the value '1' (bytes). The
注意:如果DepthUnits的值不是这两个值中的一个,则应将其解释为具有值“1”(字节)。这个
This is a concrete class that represents a scheduling service, which is a process that determines when a queued packet should be removed from a queue and sent to an output interface. Note that output interfaces can be physical network interfaces or interfaces to components internal to systems, such as crossbars or back planes. In either case, if multiple queues are involved, schedulers are used to provide access to the interface.
这是一个表示调度服务的具体类,调度服务是一个确定何时从队列中删除排队数据包并将其发送到输出接口的进程。请注意,输出接口可以是物理网络接口,也可以是系统内部组件的接口,例如横杆或背板。在这两种情况下,如果涉及多个队列,则使用调度程序提供对接口的访问。
Each instance of a PacketSchedulingService describes a scheduler from the perspective of the queues that it is servicing. Please see [DSMODEL] for more information about a scheduler.
PacketSchedulingService的每个实例都从它所服务的队列的角度描述调度器。有关计划程序的更多信息,请参阅[DSMODEL]。
PacketSchedulingService is modeled as a ConditioningService so that it can be aggregated into a QoSService (using the QoSConditioningSubService association) to indicate that its functionality underlies that QoS service. It participates in the
PacketSchedulingService被建模为一个ConditionService,以便可以将其聚合到QoS服务中(使用QosConditionSubService关联),以指示其功能是该QoS服务的基础。它参与了
NextService association to identify the subsequent ConditioningService object, if any, that acts on traffic after it has been processed by the scheduler.
NextService关联,以标识调度程序处理流量后对其起作用的后续ConditionService对象(如果有)。
The class definition is as follows:
类别定义如下:
NAME PacketSchedulingService DESCRIPTION A concrete class used to determine when a packet should be removed from a queue and sent to an output interface. DERIVED FROM ConditioningService TYPE Concrete PROPERTIES SchedulerType, OtherSchedulerType
NAME PacketSchedulingService DESCRIPTION一个具体类,用于确定何时应从队列中删除数据包并将其发送到输出接口。派生自条件服务类型具体属性SchedulerType、OtherSchedulerType
This property is an enumerated 16-bit unsigned integer, and defines the type of scheduler. Values are:
此属性是枚举的16位无符号整数,并定义调度程序的类型。价值观是:
1 - Other 2 - FIFO 3 - Priority 4 - Allocation 5 - Bounded Priority 6 - Weighted Round Robin Packet
1-其他2-FIFO 3-优先级4-分配5-有界优先级6-加权循环数据包
Note: if the value of SchedulerType is not one of these six values, it SHOULD be interpreted as if it had the value '2' (FIFO).
注意:如果SchedulerType的值不是这六个值之一,则应将其解释为具有值“2”(FIFO)。
This string property is used in conjunction with the SchedulerType property. When the value of SchedulerType is 1 (i.e., Other), then the type of scheduler is specified in this property.
此字符串属性与SchedulerType属性一起使用。当SchedulerType的值为1(即Other)时,则在此属性中指定调度器的类型。
This class does not add any properties beyond those it inherits from its superclass, PacketSchedulingService. It does, however, participate in one additional association, FailNextScheduler.
除了从其超类PacketSchedulingService继承的属性外,该类不添加任何其他属性。但是,它确实参与了另一个关联FailNextScheduler。
The class definition is as follows:
类别定义如下:
NAME NonWorkConservingSchedulingService DESCRIPTION A concrete class representing a scheduler that is capable of operating in a non-work conserving manner. DERIVED FROM PacketSchedulingService TYPE Concrete PROPERTIES (none)
名称NonWorkConservingSchedulingService描述一个具体的类,表示能够以非工作保护方式运行的调度器。源自PacketSchedulingService类型混凝土属性(无)
This is a concrete class that represents the ability to conceptualize a QoS service as a set of coordinated sub-services. This enables the network administrator to map business rules to the network, and the network designer to engineer the network such that it can provide different functions for different traffic streams.
这是一个具体的类,表示将QoS服务概念化为一组协调子服务的能力。这使网络管理员能够将业务规则映射到网络,而网络设计师能够设计网络,以便为不同的流量流提供不同的功能。
This class has two main purposes. First, it serves as a common base class for defining the various sub-services needed to build higher-level QoS services. Second, it serves as a way to consolidate the relationships between different types of QoS services and different types of ConditioningServices.
这个类有两个主要目的。首先,它作为一个公共基类,用于定义构建更高级别QoS服务所需的各种子服务。其次,它是一种整合不同类型的QoS服务和不同类型的条件服务之间关系的方法。
For example, Gold Service may be defined as a QoSService which aggregates two QoS services together. Each of these QoS services could be represented by an instance of the class DiffServService, one for servicing of very high demand packets (represented by an instance of DiffServService itself), and one for the service given to most of the packets, represented by an instance of AFService, which is a subclass of DiffServService. The high demand DiffServService instance will then use the QoSConditioningSubService aggregation to aggregate together the necessary classifiers to indicate which traffic it applies to, and the appropriate meters for contract limits, the marker to mark the EF PHB in the packets, and the queuing-related conditioning services. The AFService instance will also use the QoSConditioningSubService aggregation, to aggregate its classifiers and meters, the several markers used to mark the different AF PHBs in the packets, and the queuing-related conditioning services needed to deliver the packet treatment.
例如,Gold服务可以定义为将两个QoS服务聚合在一起的QoSService。这些QoS服务中的每一个都可以由DiffServService类的一个实例表示,一个用于服务需求非常高的数据包(由DiffServService本身的一个实例表示),另一个用于提供给大多数数据包的服务,由AFService的一个实例表示,AFService是DiffServService的一个子类。然后,高需求DiffServService实例将使用QosConditionSubservice聚合将必要的分类器聚合在一起,以指示其应用于哪些流量,以及用于合同限制的适当仪表,标记数据包中EF PHB的标记,以及与排队相关的调节服务。AFService实例还将使用QosConditionSubService聚合来聚合其分类器和计量器、用于标记数据包中不同AF PHB的几个标记以及交付数据包处理所需的排队相关调节服务。
QoSService is modeled as a type of Service, which is used as the anchor point for defining a set of sub-services that implement the desired conditioning characteristics for different types of flows. It will direct the specific type of conditioning services to be used in order to implement this service.
QoSService被建模为一种服务类型,它被用作定义一组子服务的锚点,这些子服务实现了不同类型流的期望调节特性。它将指示要使用的特定类型的空调服务,以便执行此服务。
The class definition is as follows:
类别定义如下:
NAME QoSService DESCRIPTION A concrete class used to represent a QoS service or set of services, as defined by a network administrator. DERIVED FROM Service TYPE Concrete PROPERTIES (none)
名称QoSService描述用于表示QoS服务或服务集的具体类,由网络管理员定义。源自服务类型混凝土属性(无)
This is a concrete class representing the use of standard or custom DiffServ services to implement a (higher-level) QoS service. Note that a DiffServService object may be just one of a set of coordinated QoSSubServices objects that together implement a higher-level QoS service.
这是一个具体的类,表示使用标准或自定义区分服务来实现(更高级别)QoS服务。请注意,DiffServService对象可能只是一组协调的QoSSubServices对象中的一个,这些对象一起实现更高级别的QoS服务。
DiffServService is modeled as a subclass of QoSService. This enables it to be related to a higher-level QoS service via QoSSubService, as well as to specific ConditioningService objects (e.g., metering, dropping, queuing, and others) via QoSConditioningSubService.
DiffServService被建模为QoSService的一个子类。这使得它能够通过QosConditionSubService与更高级别的QoS服务相关联,以及通过QosConditionSubService与特定的ConditionService对象(例如,计量、丢弃、排队等)相关联。
The class definition is as follows:
类别定义如下:
NAME DiffServService DESCRIPTION A concrete class used to represent a DiffServ service associated with a particular Per Hop Behavior. DERIVED FROM QoSService TYPE Concrete PROPERTIES PHBID
名称DiffServService描述用于表示与特定每跳行为关联的DiffServ服务的具体类。源自QoSService类型混凝土性能PHBID
This property is a 16-bit unsigned integer, which identifies a particular per hop behavior, or family of per hop behaviors. The value here is a Per Hop Behavior Identification Code, as defined in [R3140]. Note that as defined, these identification codes use the default, recommended, code points for PHBs as part of their structure. These values may well be different from the actual value used in the marker, as the marked value is a domain-dependent value. The ability to indicate the PHB Identification Code associated with a service is helpful for tying the QoS Service to reference documents, and for inter-domain coordination and operation.
此属性是一个16位无符号整数,用于标识特定的每跳行为或每跳行为族。此处的值是每跳行为标识码,如[R3140]中所定义。请注意,根据定义,这些标识码使用PHB的默认推荐代码点作为其结构的一部分。这些值可能与标记中使用的实际值不同,因为标记的值是依赖于域的值。指示与服务相关联的PHB标识码的能力有助于将QoS服务绑定到参考文档,并有助于域间协调和操作。
This is a concrete class that represents a specialization of the general concept of forwarding network traffic, by adding specific semantics that characterize the operation of the Assured Forwarding (AF) Service ([R2597]).
这是一个具体的类,通过添加特定的语义来描述保证转发(AF)服务的操作([R2597]),它表示转发网络流量的一般概念的专门化。
[R2597] defines four different AF classes, to represent four different treatments of traffic. A different amount of forwarding resources, such as buffer space and bandwidth, are allocated to each AF class. Within each AF class, IP packets are marked with one of three possible drop precedence values. The drop precedence of a packet determines the relative importance of that packet compared to other packets within the same AF class, if congestion occurs. A congested interface will try to avoid dropping packets marked with a lower drop precedence value, by instead discarding packets marked with a higher drop precedence value.
[R2597]定义了四种不同的AF类,以表示四种不同的流量处理方式。为每个AF类分配不同数量的转发资源,例如缓冲区空间和带宽。在每个AF类中,IP数据包被标记为三个可能的丢弃优先级值之一。如果发生拥塞,数据包的丢弃优先级决定了该数据包相对于同一AF类中其他数据包的相对重要性。拥塞的接口将尝试通过丢弃标记为较高丢弃优先级值的数据包来避免丢弃标记为较低丢弃优先级值的数据包。
Note that [R2597] defines 12 DSCPs that together represent the AF Per Hop Behavior (PHB) group. Implementations are free to extend this (e.g., add more classes and/or drop precedences).
请注意,[R2597]定义了12个DSCP,它们一起表示每跳AF行为(PHB)组。实现可以自由扩展(例如,添加更多的类和/或删除先例)。
The AFService class is modeled as a specialization of DiffServService, which is in turn a specialization of QoSService. This enables it to be related to higher-level QoS services, as well as to lower-level conditioning sub-services (e.g., classification, metering, dropping, queuing, and others).
AFService类被建模为DiffServService的专门化,而DiffServService又是QoSService的专门化。这使得它能够与更高级别的QoS服务以及更低级别的调节子服务(例如,分类、计量、丢弃、排队等)相关。
The class definition is as follows:
类别定义如下:
NAME AFService DESCRIPTION A concrete class for describing the common characteristics of differentiated services that are used to affect traffic forwarding, using the AF PHB Group. DERIVED FROM DiffServService TYPE Concrete PROPERTIES ClassNumber, DropperNumber
名称AFService DESCRIPTION使用AF PHB组描述用于影响流量转发的差异化服务的常见特征的具体类。派生自DiffServService类型具体属性ClassNumber、DropperNumber
This property is an 8-bit unsigned integer that indicates the number of AF classes that this AF implementation uses. Among the instances aggregated using the QoSConditioningSubService aggregation with an instance of AFService, one SHOULD find markers with as many distinct values as the ClassNumber of the AFService instance.
此属性是一个8位无符号整数,指示此AF实现使用的AF类的数量。在使用QosConditionSubservice聚合和AFService实例聚合的实例中,应该找到与AFService实例的ClassNumber具有相同多个不同值的标记。
This property is an 8-bit unsigned integer that indicates the number of drop precedence values that this AF implementation uses. The number of drop precedence values is the number PER AF CLASS. The corresponding droppers will be found in the collection of conditioning services aggregated with the QoSConditioningSubService aggregation.
此属性是一个8位无符号整数,指示此AF实现使用的删除优先级值的数量。删除优先级值的数目是每个AF类的数目。将在与QosConditionSubservice聚合的条件服务集合中找到相应的滴管。
This class represents a service that supports a particular microflow. The microflow is identified by the string-valued property FlowID. In some implementations, an instance of this class corresponds to an entry in the implementation's flow table.
此类表示支持特定微流的服务。微流由字符串值属性FlowID标识。在某些实现中,此类的实例对应于实现的流表中的一个条目。
The class definition is as follows:
类别定义如下:
NAME FlowService DESCRIPTION A concrete class representing a microflow. DERIVED FROM QoSService TYPE Concrete PROPERTIES FlowID
名称FlowService描述表示微流的具体类。源自QoSService类型混凝土属性FlowID
This property is a string containing an identifier for a microflow.
此属性是包含微流标识符的字符串。
This class represents a logical entity that calculates an average queue depth for a queue, based on a smoothing weight and a sampling time interval. It does this calculation on behalf of a RED dropper, to allow the dropper to make its decisions whether to drop packets based on a smoothed average queue depth for the queue.
此类表示基于平滑权重和采样时间间隔计算队列平均队列深度的逻辑实体。它代表红色滴管执行此计算,以允许滴管根据队列的平滑平均队列深度决定是否丢弃数据包。
The class definition is as follows:
类别定义如下:
NAME DropThresholdCalculationService DESCRIPTION A concrete class representing a logical entity that calculates an average queue depth for a queue, based on a smoothing weight and a sampling time interval. The latter are properties of this Service, describing how it operates and its necessary parameters. DERIVED FROM Service TYPE Concrete PROPERTIES SmoothingWeight, TimeInterval
NAME DropThresholdCalculationService DESCRIPTION一个具体类,表示一个逻辑实体,该逻辑实体根据平滑权重和采样时间间隔计算队列的平均队列深度。后者是此服务的属性,描述其操作方式及其必要的参数。源自服务类型混凝土属性平滑重量、时间间隔
This property is a 32-bit unsigned integer, ranging between 0 and 100,000 - specified in thousandths. It defines the weighting of past history in affecting the calculation of the current average queue depth. The current queue depth calculation uses the inverse of this value as its factor, and one minus that inverse as the factor for the historical average. The calculation takes the form:
此属性是一个32位无符号整数,范围在0和100000之间-以千分之一指定。它定义了影响当前平均队列深度计算的过去历史的权重。当前队列深度计算使用此值的倒数作为其因子,1减去该倒数作为历史平均值的因子。计算采用以下形式:
average = (old_average*(1-inverse of SmoothingWeight)) + (current_queue_depth*inverse of SmoothingWeight)
average = (old_average*(1-inverse of SmoothingWeight)) + (current_queue_depth*inverse of SmoothingWeight)
Implementations may choose to limit the acceptable set of values to a specified set, such as powers of 2.
实现可以选择将可接受的值集限制为指定的值集,例如2的幂。
Min and max values are 0 and 100000.
最小值和最大值分别为0和100000。
This property is a 32-bit unsigned integer, defining the number of nanoseconds between each calculation of average/smoothed queue depth. If this property is not specified, the CalculationService may determine an appropriate interval.
此属性是32位无符号整数,定义每次计算平均/平滑队列深度之间的纳秒数。如果未指定此属性,CalculationService可能会确定适当的间隔。
FilterEntryBase is the abstract base class from which all filter entry classes are derived. It serves as the endpoint for the EntriesInFilterList aggregation, which groups filter entries into filter lists. Its properties include CIM naming properties and an IsNegated boolean property (to easily "NOT" the match information specified in an instance of one of its subclasses).
FilterEntryBase是从中派生所有筛选器条目类的抽象基类。它充当EntriesInFilterList聚合的端点,该聚合将筛选器条目分组到筛选器列表中。它的属性包括CIM命名属性和IsNegated boolean属性(以便轻松地“不”匹配其子类实例中指定的信息)。
Because FilterEntryBase has general applicability, it is defined in [PCIME]. See [PCIME] for the definition of this class.
由于FilterEntryBase具有通用性,因此它在[PCIME]中定义。有关此类的定义,请参见[PCIME]。
This concrete class makes it possible to represent an entire IP header filter in a single object. A property IpVersion identifies whether the IP addresses in an instance are IPv4 or IPv6 addresses. (Since the source and destination IP addresses come from the same packet header, they will always be of the same type.)
这个具体的类使得在单个对象中表示整个IP头过滤器成为可能。属性IpVersion标识实例中的IP地址是IPv4地址还是IPv6地址。(由于源IP地址和目标IP地址来自相同的数据包头,因此它们将始终属于相同的类型。)
See [PCIME] for the definition of this class.
有关此类的定义,请参见[PCIME]。
This concrete class allows 802.1.source and destination MAC addresses, as well as the 802.1 protocol ID, priority, and VLAN identifier fields, to be expressed in a single object
该具体类允许在单个对象中表示802.1.0源和目标MAC地址,以及802.1协议ID、优先级和VLAN标识符字段
See [PCIME] for the definition of this class.
有关此类的定义,请参见[PCIME]。
This is a concrete class that models classifying packets using traffic-conditioning results stored in a packet preamble by a PreambleMarkerService. See Section 3.8.3 for a discussion of how, and why, QDDIM models the capability to store these results in a packet preamble. An instance of PreambleFilter is used to select packets based on a two-part string identifying a specific result. The logic for this match is "at least one". That is, a packet with multiple results in its preamble matches a filter if at least one of these results matches the filter.
这是一个具体的类,它使用由PreambleMarkerService存储在数据包前导中的流量调节结果对数据包进行分类建模。参见第3.8.3节,了解QDDIM如何以及为什么对将这些结果存储在数据包前导中的能力进行建模的讨论。前置码过滤器的一个实例用于基于标识特定结果的两部分字符串选择数据包。此匹配的逻辑是“至少一个”。也就是说,如果前导码中有多个结果的数据包中至少有一个结果与过滤器匹配,则该数据包与过滤器匹配。
The class definition is as follows:
类别定义如下:
NAME PreambleFilter DESCRIPTION A concrete class representing criteria for selecting packets based on prior traffic-conditioning results stored in a packet preamble. DERIVED FROM FilterEntryBase TYPE Concrete PROPERTIES FilterItemList[ ]
NAME PreambleFilter DESCRIPTION一个具体类,表示基于存储在数据包前导中的先前流量调节结果选择数据包的标准。派生自FilterEntryBase类型混凝土属性FilterItemList[]
This property is an ordered list of strings, where each string has the format "<type>,<value>". See Section 3.8.3 for a list of <type>'s defined in QDDIM, and the nature of the associated <value> for each of these types.
此属性是字符串的有序列表,其中每个字符串的格式为“<type>,<value>”。参见第3.8.3节,了解QDDIM中定义的<type>,以及每种类型相关<value>的性质。
Note that there are two parallel terminologies for characterizing meter results. The enumeration value "conforming(1)" is sometimes described as "in profile," and the value "nonConforming(3)" is sometimes described as "out of profile".
请注意,有两个平行术语用于表征仪表结果。枚举值“符合(1)”有时被描述为“外形中”,而值“不符合(3)”有时被描述为“外形外”。
This is a concrete class that aggregates instances of (subclasses of) FilterEntryBase via the aggregation EntriesInFilterList. It is possible to aggregate different types of filters into a single FilterList - for example, packet header filters (represented by the IPHeaderFilter class) and security filters (represented by subclasses of FilterEntryBase defined by IPsec).
这是一个通过aggregation EntriesInFilterList聚合FilterEntryBase(的子类)实例的具体类。可以将不同类型的筛选器聚合到单个筛选器列表中—例如,数据包头筛选器(由IPHeaderFilter类表示)和安全筛选器(由IPsec定义的FilterEntryBase子类表示)。
The aggregation property EntriesInFilterList.EntrySequence is always set to 0, to indicate that the aggregated filter entries are ANDed together to form a selector for a class of traffic.
聚合属性EntriesInFilterList.EntrySequence始终设置为0,以指示聚合的筛选器项被合并在一起以形成一类流量的选择器。
See [PCIME] for the definition of this class.
有关此类的定义,请参见[PCIME]。
This is an abstract class defined in the Core Model of CIM. It is a subclass of the LogicalElement class, and is the base class for all objects that manage access to CIM_Services. It represents the management of utilizing or invoking a Service. Please refer to [CIM] for the full definition of this class.
这是CIM核心模型中定义的抽象类。它是LogicalElement类的一个子类,是管理对CIM_服务访问的所有对象的基类。它表示使用或调用服务的管理。有关此类的完整定义,请参阅[CIM]。
This is a concrete class derived from ServiceAccessPoint, which describes a communication point from which the services of the network or the system's protocol stack may be accessed. Please refer to [CIM] for the full definition of this class.
这是从ServiceAccessPoint派生的一个具体类,它描述了一个通信点,从该通信点可以访问网络或系统协议栈的服务。有关此类的完整定义,请参阅[CIM]。
This is an abstract class defined in the Core Model of CIM. It is the superclass for all classes that represent groupings or bags, and that carry no status or "state". (The latter would be more correctly modeled as ManagedSystemElements.) Please refer to [CIM] for the full definition of this class.
这是CIM核心模型中定义的抽象类。它是表示分组或行李的所有类的超类,并且不携带状态或“状态”。(后者将更正确地建模为ManagedSystemElements。)有关此类的完整定义,请参阅[CIM]。
This is an abstract class defined in the Core Model of CIM. It is a subclass of the Collection superclass, restricting the contents of the Collection to ManagedSystemElements. Please refer to [CIM] for the full definition of this class.
这是CIM核心模型中定义的抽象类。它是集合超类的子类,将集合的内容限制为ManagedSystemElements。有关此类的完整定义,请参阅[CIM]。
This is a concrete class that represents the collection of buffers used by a QueuingService. (The association QueueAllocation represents this usage.) The existence and management of individual buffers may be modeled in a future document. At the current level of abstraction, modeling the existence of the BufferPool is necessary. Long term, it is not sufficient.
这是一个具体的类,表示QueuingService使用的缓冲区集合。(关联QueueAllocation表示这种用法。)单个缓冲区的存在和管理可以在将来的文档中建模。在当前的抽象级别上,有必要对缓冲池的存在进行建模。从长远来看,这是不够的。
In implementations where there are multiple buffer sizes, an instance of BufferPool should be defined for each set of buffers with identical or similar sizes. These instances of buffer pools can then be grouped together using the CollectedBuffersPool aggregation.
在存在多个缓冲区大小的实现中,应该为具有相同或类似大小的每组缓冲区定义一个缓冲池实例。然后,可以使用CollectedBuffersPool聚合将这些缓冲池实例分组在一起。
Note that this class is derived from CollectionOfMSEs, and not from Forwarding or ConditioningService. A BufferPool is only a collection of storage, and is NOT a Service.
请注意,此类是从CollectionForms派生的,而不是从Forwarding或ConditionService派生的。缓冲池只是存储的集合,而不是服务。
The class definition is as follows:
类别定义如下:
NAME BufferPool DESCRIPTION A concrete class representing a collection of buffers. DERIVED FROM CollectionOfMSEs TYPE Concrete PROPERTIES Name, BufferSize, TotalBuffers, AvailableBuffers, SharedBuffers
NAME BufferPool DESCRIPTION表示缓冲区集合的具体类。派生自CollectionOffmes类型具体属性名称、缓冲区大小、TotalBuffers、AvailableBuffers、SharedBuffers
This property is a string with a maximum length of 256 characters. It is the common name or label by which the object is known.
此属性是最大长度为256个字符的字符串。它是已知对象的通用名称或标签。
This property is a 32-bit unsigned integer, identifying the approximate number of bytes in each buffer in the buffer pool. An implementation will typically group buffers of roughly the same size together, to reduce the number of buffer pools it needs to manage. This model does not specify the degree to which buffers in the same buffer pool may differ in size.
此属性是32位无符号整数,标识缓冲池中每个缓冲区中的大致字节数。实现通常会将大小大致相同的缓冲区分组在一起,以减少需要管理的缓冲池数量。此模型不指定同一缓冲池中的缓冲区大小可能不同的程度。
This property is a 32-bit unsigned integer, reporting the total number of individual buffers in the pool.
此属性是32位无符号整数,报告池中单个缓冲区的总数。
This property is a 32-bit unsigned integer, reporting the number of buffers in the Pool that are currently not allocated to any instance of a QueuingService. Buffers allocated to a QueuingService could either be in use (that is, currently contain packet data), or be allocated to a queue pending the arrival of new packet data.
此属性是32位无符号整数,报告池中当前未分配给QueuingService任何实例的缓冲区数。分配给QueuingService的缓冲区可以正在使用(即,当前包含数据包),也可以分配给等待新数据包到达的队列。
This property is a 32-bit unsigned integer, reporting the number of buffers in the Pool that have been simultaneously allocated to multiple instances of QueuingService.
此属性是32位无符号整数,报告池中同时分配给多个QueuingService实例的缓冲区数。
This is an abstract class that represents the configuration information that a PacketSchedulingService has for one of the elements that it is scheduling. The scheduled element is either a QueuingService or another PacketSchedulingService.
这是一个抽象类,表示PacketSchedulingService为其正在调度的元素之一所具有的配置信息。scheduled元素是QueuingService或另一个PacketSchedulingService。
Among the subclasses of this class, some are defined in such a way that all of their instances are work conserving. Other subclasses, however, may have instances that either are or are not work conserving. In this class, the boolean property WorkConserving indicates whether an instance is or is not work conserving. The range of values for WorkConserving is restricted to TRUE in the subclasses that are inherently work conserving, since instances of these classes cannot be anything other than work conserving.
在这个类的子类中,有些子类的定义方式使得它们的所有实例都可以节省工作量。然而,其他子类可能有工作守恒或不守恒的实例。在这个类中,布尔属性WorkConserving表示实例是否在工作保护中。在本质上是工作保护的子类中,工作保护的值的范围被限制为TRUE,因为这些类的实例只能是工作保护。
The class definition is as follows:
类别定义如下:
NAME SchedulingElement DESCRIPTION An abstract class representing the configuration information that a PacketSchedulingService has for one of the elements that it is scheduling. DERIVED FROM ManagedElement TYPE Abstract PROPERTIES WorkConserving
名称SchedulingElement描述一个抽象类,表示PacketSchedulingService为其正在调度的元素之一所具有的配置信息。派生自ManagedElement类型抽象属性WorkConserving
This boolean property indicates whether the PacketSchedulingService tied to this instance by the ElementInSchedulingService aggregation is treating the input tied to this instance by the QueueToSchedule or SchedulingServiceToSchedule association in a work-conserving manner. Note that this property is writable, indicating that an administrator can change the behavior of the SchedulingElement - but only for those elements that can operate in a non-workconserving mode.
此布尔属性指示由ElementInSchedulingService聚合绑定到此实例的PacketSchedulingService是否以节省工作的方式处理由QueueToSchedule或SchedulingServiceToSchedule关联绑定到此实例的输入。请注意,此属性是可写的,表示管理员可以更改SchedulingElement的行为,但仅限于可以在非工作保护模式下操作的元素。
This class is a subclass of the abstract class SchedulingElement. It introduces five new properties to support bandwidth-based scheduling. As is the case with all subclasses of SchedulingElement, the input associated with an instance of AllocationSchedulingElement is of one of two types: either a queue, or another scheduler.
此类是抽象类SchedulingElement的子类。它引入了五个新属性来支持基于带宽的调度。与SchedulingElement的所有子类一样,与AllocationSchedulingElement实例关联的输入属于两种类型之一:队列或另一个调度器。
The class definition is as follows:
类别定义如下:
NAME AllocationSchedulingElement DESCRIPTION A concrete class containing parameters for controlling bandwidth-based scheduling.
名称AllocationSchedulingElement描述包含用于控制基于带宽的调度的参数的具体类。
DERIVED FROM SchedulingElement TYPE Concrete PROPERTIES AllocationUnits, BandwidthAllocation, BurstAllocation, CanShare, WorkFlexible
源自SchedulingElement类型具体属性AllocationUnits、带宽分配、BurstLocation、CanShare、WorkFlexible
This property is a 16-bit unsigned integer enumeration that identifies the units in which the BandwidthAllocation and BurstAllocation properties are expressed. The following values are defined:
此属性是一个16位无符号整数枚举,用于标识表示带宽分配和BurstAllocation属性的单元。定义了以下值:
o bytes(1) o packets(2) o cells(3) -- fixed-size, for example, ATM
o 字节(1)o数据包(2)o信元(3)——固定大小,例如ATM
Note: if the value of AllocationUnits is not one of these three values, it SHOULD be interpreted as if it had the value '1' (bytes).
注意:如果AllocationUnits的值不是这三个值之一,则应将其解释为具有值“1”(字节)。
This property is a 32-bit unsigned integer that defines the number of units/second that should be allocated to the associated input. The units are identified by the AllocationUnits property.
此属性是32位无符号整数,定义应分配给关联输入的单位/秒数。单位由AllocationUnits属性标识。
This property is a 32-bit unsigned integer that specifies the amount of temporary or short-term bandwidth (in units per second) that can be allocated to an input, beyond the amount of bandwidth allocated through the BandwidthAllocation property. If the maximum actual bandwidth allocation for the input were to be measured, it would be the sum of the BurstAllocation and the BandwidthAllocation properties. The units are identified by the AllocationUnits property.
此属性是一个32位无符号整数,指定可以分配给输入的临时或短期带宽量(以每秒单位为单位),超出通过BandwidthAllocation属性分配的带宽量。如果要测量输入的最大实际带宽分配,它将是BurstLocation和带宽分配属性的总和。单位由AllocationUnits属性标识。
This is a boolean property that, if TRUE, enables unused bandwidth from the associated input to be allocated to other inputs serviced by the Scheduler.
这是一个布尔属性,如果为TRUE,则允许将关联输入中未使用的带宽分配给调度程序服务的其他输入。
This is a boolean property that, if TRUE, indicates that the behavior of the scheduler relative to this input can be altered by changing the value of the inherited property WorkConserving.
这是一个布尔属性,如果为TRUE,则表示调度程序相对于此输入的行为可以通过更改继承属性WorkConserving的值来更改。
This class is a subclass of the abstract class SchedulingElement, representing a weighted round robin (WRR) scheduling discipline. It introduces a new property WeightingFactor, to give some inputs a
此类是抽象类SchedulingElement的子类,表示加权循环(WRR)调度规程。它引入了一个新的属性权重因子,为一些输入提供一个
higher probability of being serviced than other inputs. It also introduces a property Priority, to serve as a tiebreaker to be used when inputs have equal weighting factors. As is the case with all subclasses of SchedulingElement, the input associated with an instance of WRRSchedulingElement is of one of two types: either a queue, or another scheduler.
与其他输入相比,被服务的概率更高。它还引入了一个属性优先级,当输入具有相等的权重因子时,它将用作一个断开连接的工具。与SchedulingElement的所有子类一样,与WRRSchedulingElement实例关联的输入属于两种类型之一:队列或另一个调度器。
Because scheduling of this type is always work conserving, the inherited boolean property WorkConserving is restricted to the value TRUE in this class.
由于此类型的调度始终是工作保护的,因此继承的布尔属性WorkConserving在此类中仅限于值TRUE。
The class definition is as follows:
类别定义如下:
NAME WRRSchedulingElement DESCRIPTION This class specializes the SchedulingElement class to add a per-input weight. This is used by a weighted round robin packet scheduler when it handles its associated inputs. It also adds a second property to serve as a tie-breaker in the case where multiple inputs have been assigned the same weight. DERIVED FROM SchedulingElement TYPE Concrete PROPERTIES WeightingFactor, Priority
NAME WRRSchedulingElement DESCRIPTION此类专门用于SchedulingElement类以添加每个输入权重。加权循环数据包调度器在处理其相关输入时使用该方法。它还添加了第二个属性,用于在多个输入被分配相同权重的情况下充当连接断路器。源自SchedulingElement类型混凝土属性权重因子,优先级
This property is a 32-bit unsigned integer, which defines the weighting factor that offers some inputs a higher probability of being serviced than other inputs. This property represents this probability. Its minimum value is 0, its maximum value is 100000, and its units are in thousandths.
此属性是32位无符号整数,它定义了权重因子,该因子为某些输入提供比其他输入更高的服务概率。此属性表示此概率。其最小值为0,最大值为100000,单位为千分之一。
This property is a 16-bit unsigned integer, which serves as a tiebreaker, in the event that two or more inputs have equal weights. A larger value represents a higher priority. If this property is specified for any of the WRRSchedulingElements associated with a PacketSchedulingService, then it must be specified for all WRRSchedulingElements for that PacketSchedulingService, and the property values for these WRRSchedulingElements must all be different.
此属性是一个16位无符号整数,在两个或多个输入具有相等权重的情况下,该属性充当分接器。值越大表示优先级越高。如果为与PacketSchedulingService关联的任何WRRSchedulingElements指定了此属性,则必须为该PacketSchedulingService的所有WRRSchedulingElements指定此属性,并且这些WRRSchedulingElements的属性值必须都不同。
While this condition may not occur in some implementations of a weighted round-robin scheduler, many implementations require a priority to resolve an equal-weight condition. In instances where this behavior is not necessary or is undesirable, this property may be left unspecified.
虽然这种情况在加权循环调度程序的某些实现中可能不会发生,但许多实现需要优先级来解决等权情况。在不需要或不需要此行为的情况下,此属性可能未指定。
This class is a subclass of the abstract class SchedulingElement. It indicates that a scheduler is taking packets from a set of inputs using the priority scheduling discipline. As is the case with all subclasses of SchedulingElement, the input associated with an instance of PrioritySchedulingElement is of one of two types: either a queue, or another scheduler. The property Priority in PrioritySchedulingElement represents the priority for an input, relative to the priorities of all the other inputs to which the scheduler that aggregates this PrioritySchedulingElement is associated. Inputs to which the scheduler is related via other scheduling disciplines do not figure in this prioritization.
此类是抽象类SchedulingElement的子类。它表示调度器正在使用优先级调度规程从一组输入中获取数据包。与SchedulingElement的所有子类一样,与PrioritySchedulingElement实例关联的输入属于两种类型之一:队列或其他调度器。PrioritySchedulingElement中的属性Priority表示输入的优先级,相对于聚合此PrioritySchedulingElement的计划程序所关联的所有其他输入的优先级。通过其他调度规程与调度程序相关的输入不在该优先级中。
Because scheduling of this type is always work conserving, the inherited boolean property WorkConserving is restricted to the value TRUE in this class.
由于此类型的调度始终是工作保护的,因此继承的布尔属性WorkConserving在此类中仅限于值TRUE。
The class definition is as follows:
类别定义如下:
NAME PrioritySchedulingElement DESCRIPTION A concrete class that specializes the SchedulingElement class to add a Priority property. This property is used by a SchedulingService that is doing priority scheduling for a set of inputs.
NAME PrioritySchedulingElement DESCRIPTION一个具体类,专门用于SchedulingElement类以添加优先级属性。SchedulingService使用此属性,该服务正在对一组输入执行优先级调度。
DERIVED FROM SchedulingElement TYPE Concrete PROPERTIES Priority
源自SchedulingElement类型混凝土属性优先级
This property is a 16-bit unsigned integer that indicates the priority level of a scheduler input relative to the other inputs serviced by this PacketSchedulingService. A larger value represents a higher priority.
此属性是一个16位无符号整数,指示调度程序输入相对于此PacketSchedulingService服务的其他输入的优先级。值越大表示优先级越高。
This class is a subclass of the class PrioritySchedulingElement, which is itself derived from the abstract class SchedulingElement. As is the case with all subclasses of SchedulingElement, the input associated with an instance of BoundedPrioritySchedulingElement is of one of two types: either a queue, or another scheduler. BoundedPrioritySchedulingElement adds an upper bound (in kilobits per second) on how much traffic can be handled from an input. This data is specific to that one input. It is needed when bounded strict priority scheduling is performed.
此类是PrioritySchedulingElement类的子类,该类本身派生自抽象类SchedulingElement。与SchedulingElement的所有子类一样,与BoundedPrioritySchedulingElement实例关联的输入属于两种类型之一:队列或其他调度器。BoundedPrioritySchedulingElement添加了一个上限(以千比特每秒为单位),该上限表示可以从输入处理多少流量。此数据特定于该输入。当执行有界严格优先级调度时,需要使用它。
This class inherits from its superclass PrioritySchedulingElement the restriction of the inherited boolean property WorkConserving to the value TRUE.
此类从其超类PrioritySchedulingElement继承继承的布尔属性WorkConserving的值TRUE的限制。
The class definition is as follows:
类别定义如下:
NAME BoundedPrioritySchedulingElement DESCRIPTION This concrete class specializes the PrioritySchedulingElement class to add a BandwidthBound property. This property bounds the rate at which traffic from the associated input can be handled.
名称BoundedPrioritySchedulingElement描述此具体类专门用于PrioritySchedulingElement类以添加带宽绑定属性。此属性限制处理来自关联输入的流量的速率。
DERIVED FROM PrioritySchedulingElement TYPE Concrete PROPERTIES BandwidthBound
源自PrioritySchedulingElement类型混凝土特性带宽限制
This property is a 32-bit unsigned integer that defines the upper limit on the amount of traffic that can be handled from the input. This is not a shaped upper bound, since bursts can occur. It is a strict bound, limiting the impact of the input. The units are kilobits per second.
此属性是32位无符号整数,用于定义可从输入处理的通信量上限。这不是一个固定的上限,因为爆发可能发生。这是一个严格的界限,限制了输入的影响。单位为千比特每秒。
This section details the QoS device datapath associations, including the aggregations, which were shown earlier in Figures 4 and 5. These associations are defined as classes in the Information Model. Each of these classes has two properties referring to instances of the two classes that the association links. Some of the association classes have additional properties as well.
本节详细介绍了QoS设备数据路径关联,包括聚合,如图4和图5所示。这些关联在信息模型中定义为类。这些类中的每一个都有两个属性,它们引用关联链接的两个类的实例。一些关联类还具有其他属性。
This abstract association defines two object references (named Antecedent and Dependent) that establish general dependency relationships between different managed objects in the information model. The Antecedent reference identifies the independent object in the association, while the Dependent reference identifies the entity that IS dependent.
此抽象关联定义了两个对象引用(名为Antecedent和Dependent),它们在信息模型中的不同托管对象之间建立一般依赖关系。Antecedent引用标识关联中的独立对象,而Dependent引用标识依赖的实体。
The association's cardinality is many to many.
协会的基本原则是多对多。
The association is defined in the Core Model of CIM. Please refer to [CIM] for the full definition of this class.
关联在CIM的核心模型中定义。有关此类的完整定义,请参阅[CIM]。
This association defines two object references that establish a general dependency relationship between a Service object and a ServiceAccessPoint object. This relationship indicates that the referenced Service uses the ServiceAccessPoint of ANOTHER Service. The Service is the Dependent reference, relying on the ServiceAccessPoint to gain access to another Service.
此关联定义了两个对象引用,用于在服务对象和ServiceAccessPoint对象之间建立一般依赖关系。此关系表示引用的服务使用另一个服务的ServiceAccessPoint。该服务是依赖引用,依赖ServiceAccessPoint访问另一个服务。
The association's cardinality is many to many.
协会的基本原则是多对多。
The association is defined in the Core Model of CIM. Please refer to [CIM] for the full definition of this class.
关联在CIM的核心模型中定义。有关此类的完整定义,请参阅[CIM]。
This association is derived from the association ServiceSAPDependency, and represents the binding, in the ingress direction, between a protocol endpoint and the first ConditioningService that processes packets received via that protocol endpoint. Since there can only be one "first" ConditioningService for a protocol endpoint, the cardinality for the Dependent object reference is narrowed from 0..n to 0..1. Since, on the other hand, a single ConditioningService can be the first to process packets received via multiple protocol endpoints, the cardinality of the Antecedent object reference remains 0..n.
此关联源自关联ServiceSAPDependency,表示协议端点与处理通过该协议端点接收的数据包的第一个ConditionService之间在入口方向上的绑定。由于协议端点只能有一个“第一”条件服务,因此依赖对象引用的基数从0..n缩小到0..1。另一方面,由于单个ConditioningService可以首先处理通过多个协议端点接收的数据包,因此Antecedent对象引用的基数仍然为0..n。
The class definition is as follows:
类别定义如下:
NAME IngressConditioningServiceOnEndpoint DESCRIPTION An association that establishes a dependency relationship between a protocol endpoint and the first conditioning service that processes traffic arriving via that protocol endpoint. DERIVED FROM ServiceSAPDependency ABSTRACT False PROPERTIES Antecedent[ref ProtocolEndpoint[0..n]], Dependent[ref ConditioningService[0..1]]
名称IngressConditionServiceOnEndpoint描述在协议端点和处理通过该协议端点到达的流量的第一个条件服务之间建立依赖关系的关联。派生自ServicesAppDependency抽象假属性先行项[ref ProtocolEndpoint[0..n]],依赖项[ref ConditioningService[0..1]]
This association is derived from the association ServiceSAPDependency, and represents the binding, in the egress direction, between a protocol endpoint and the last ConditioningService that processes packets before they leave a network device via that protocol endpoint. (This "last" ConditioningService is ordinarily a scheduler, but it doesn't have to be.) Since there can be multiple "last" ConditioningServices for a protocol endpoint in the case of a fallback scheduler, the cardinality for the Dependent object reference remains 0..n. Since, however, a single ConditioningService cannot be the last one to process packets for multiple protocol endpoints, the cardinality of the Antecedent object reference is narrowed from 0..n to 0..1.
此关联源自关联ServiceSAPDependency,表示协议端点与最后一个ConditionService之间的绑定,该服务在数据包通过该协议端点离开网络设备之前处理数据包。(此“last”ConditioningService通常是一个计划程序,但不一定是。)由于在回退计划程序的情况下,协议端点可以有多个“last”ConditioningService,因此依赖对象引用的基数保持为0..n。但是,由于单个ConditioningService不能是最后一个为多个协议端点处理数据包的服务,因此Antecedent对象引用的基数从0..n缩小到0..1。
The class definition is as follows:
类别定义如下:
NAME EgressConditioningServiceOnEndpoint DESCRIPTION An association that establishes a dependency relationship between a protocol endpoint and the last conditioning service(s) that process traffic to be transmitted via that protocol endpoint. DERIVED FROM ServiceSAPDependency ABSTRACT False PROPERTIES Antecedent[ref ProtocolEndpoint[0..1]], Dependent[ref ConditioningService[0..n]]
名称EGERSSConditioningServiceOnEndpoint描述在协议端点和处理通过该协议端点传输的流量的最后一个条件服务之间建立依赖关系的关联。派生自ServicesAppDependency抽象假属性先行项[ref ProtocolEndpoint[0..1]],依赖项[ref ConditioningService[0..n]]
This association is a subclass of Dependency, describing the association between a head or tail dropper and a queue that it monitors to determine when to drop traffic. The referenced queue is the one whose queue depth is compared against the Dropper's threshold. The cardinality is 1..n on the queue side, since a
此关联是Dependency的一个子类,描述头或尾滴管与队列之间的关联,该队列由其监视以确定何时丢弃流量。引用的队列是其队列深度与滴管阈值进行比较的队列。队列侧的基数为1..n,因为
head/tail dropper must monitor at least one queue. For the classes HeadTailDropper and HeadTailDropQueueBinding, the rule for combining the inputs from multiple queues is simple addition: if the sum of the lengths of the monitored queues exceeds the dropper's QueueThreshold value, then packets are dropped. This rule for combining inputs may, however, be overridden by a different rule in subclasses of one or both of these classes.
头/尾滴管必须至少监控一个队列。对于HeadTailDropper和HeadTailDropQueueBinding类,组合来自多个队列的输入的规则是简单的加法:如果受监视队列的长度之和超过dropper的QueueThreshold值,则丢弃数据包。但是,组合输入的规则可能会被这些类中一个或两个类的子类中的不同规则覆盖。
The class definition is as follows:
类别定义如下:
NAME HeadTailDropQueueBinding DESCRIPTION A generic association used to establish a dependency relationship between a head or tail dropper and a queue that it monitors. DERIVED FROM Dependency ABSTRACT False PROPERTIES Antecedent[ref QueuingService[1..n]], Dependent[ref HeadTailDropperService [0..n]]
名称HeadTailDropQueueBinding描述用于在头或尾滴管与其监视的队列之间建立依赖关系的通用关联。派生自依赖项抽象假属性先行项[ref QueuingService[1..n]],依赖项[ref HeadTailDropperService[0..n]]
This association is a subclass of Dependency, which defines two object references that establish a dependency relationship between a QueuingService and an instance of the DropThresholdCalculationService class. The queue's current depth is used by the calculation service in calculating an average queue depth.
此关联是Dependency的子类,它定义了两个对象引用,用于在QueuingService和DropThresholdCalculationService类的实例之间建立依赖关系。计算服务在计算平均队列深度时使用队列的当前深度。
The class definition is as follows:
类别定义如下:
NAME CalculationBasedOnQueue DESCRIPTION A generic association used to establish a dependency relationship between a QueuingService object and a DropThresholdCalculationService object. DERIVED FROM ServiceServiceDependency ABSTRACT False PROPERTIES Antecedent[ref QueuingService[1..1]], Dependent[ref DropThresholdCalculationService [0..n]]
名称CalculationBasedOnQueue描述用于在QueuingService对象和DropThresholdCalculationService对象之间建立依赖关系的通用关联。派生自ServiceDependency抽象假属性先行项[ref QueuingService[1..1]],依赖项[ref DropThresholdCalculationService[0..n]]
This property is inherited from the Dependency association, and overridden to serve as an object reference to a QueuingService object (instead of to the more general ManagedElement). This reference identifies the queue that the DropThresholdCalculationService will use in its calculation of average queue depth.
此属性从依赖项关联继承,并被重写以用作QueuingService对象(而不是更一般的ManagedElement)的对象引用。此引用标识DropThresholdCalculationService在计算平均队列深度时将使用的队列。
This property is inherited from the Dependency association, and overridden to serve as an object reference to a DropThresholdCalculationService object (instead of to the more general ManagedElement). This reference identifies a DropThresholdCalculationService that uses the referenced queue's current depth as one of the inputs to its calculation of average queue depth.
此属性从依赖项关联继承,并被重写以用作DropThresholdCalculationService对象(而不是更一般的ManagedElement)的对象引用。此引用标识DropThresholdCalculationService,该服务使用引用队列的当前深度作为其平均队列深度计算的输入之一。
This association defines two object references that establish a dependency relationship in which a ManagedSystemElement depends on the functionality of one or more Services. The association's cardinality is many to many.
此关联定义了两个对象引用,用于建立依赖关系,其中ManagedSystemElement依赖于一个或多个服务的功能。协会的基本原则是多对多。
The association is defined in the Core Model of CIM. Please refer to [CIM] for the full definition of this class.
关联在CIM的核心模型中定义。有关此类的完整定义,请参阅[CIM]。
This association defines two object references that establish a dependency relationship between two Service objects. The particular type of dependency is represented by the TypeOfDependency property; typical examples include that one Service is required to be present or required to have completed for the other Service to operate.
此关联定义了两个对象引用,用于在两个服务对象之间建立依赖关系。依赖的特定类型由TypeOfDependence属性表示;典型的例子包括一项服务需要提供或需要完成才能运行另一项服务。
This association is very similar to the ServiceSAPDependency relationship. For the latter, the Service is dependent on an AccessPoint to get at another Service. In this relationship, it directly identifies its Service dependency. Both relationships should not be instantiated, since their information is repetitive.
此关联与ServiceSAPDependency关系非常相似。对于后者,服务依赖于访问点来获取另一个服务。在这种关系中,它直接标识其服务依赖关系。这两种关系都不应该实例化,因为它们的信息是重复的。
The association's cardinality is many to many.
协会的基本原则是多对多。
The association is defined in the Core Model of CIM. Please refer to [CIM] for the full definition of this class.
关联在CIM的核心模型中定义。有关此类的完整定义,请参阅[CIM]。
This association is a subclass of ServiceServiceDependency, which defines two object references that represent the reliance of a REDDropperService on a DropThresholdCalculationService - calculating an average queue depth based on the observed depths of one or more queues.
此关联是ServiceDependency的一个子类,它定义了两个对象引用,表示REDDropperService对DropThresholdCalculationService的依赖性—根据观察到的一个或多个队列的深度计算平均队列深度。
The class definition is as follows:
类别定义如下:
NAME CalculationServiceForDropper DESCRIPTION A generic association used to establish a dependency relationship between a calculation service and a REDDropperSrevice for which it performs average queue depth calculations DERIVED FROM ServiceServiceDependency ABSTRACT False PROPERTIES Antecedent[ref DropThresholdCalculationService[1..n]], Dependent[ref REDDropperService[0..n]] 4.4.9.1. The Reference Antecedent
名称CalculationServiceForDropper描述用于在计算服务和REDDropperSrevice之间建立依赖关系的通用关联,它执行从ServiceDependency抽象假属性[ref DropThresholdCalculationService[1..n]]之前派生的平均队列深度计算,依赖于此关系[参考REDROPPERSERVICE[0..n]]4.4.9.1.参考先行项
This property is inherited from the ServiceServiceDependency association, and overridden to serve as an object reference to a DropThresholdCalculationService object (instead of to the more general Service object). The cardinality of the object reference is 1..n, indicating that a RED dropper may be served by one or more calculation services.
此属性从ServiceDependency关联继承,并被重写以用作DropThresholdCalculationService对象(而不是更一般的服务对象)的对象引用。对象引用的基数为1..n,表示红色滴管可以由一个或多个计算服务提供服务。
This property is inherited from the ServiceServiceDependency association, and overridden to serve as an object reference to a REDDropperService object (instead of to the more general Service object). This reference identifies a RED dropper served by a DropThresholdCalculationService.
此属性从ServiceDependency关联继承,并被重写以用作REDDropperService对象(而不是更一般的服务对象)的对象引用。此引用标识DropThresholdCalculationService提供的红色滴管。
This association is a subclass of Dependency, which defines two object references that establish a dependency relationship between a QueuingService and a BufferPool that provides storage space for the packets in the queue.
此关联是Dependency的一个子类,它定义了两个对象引用,用于在QueuingService和为队列中的数据包提供存储空间的缓冲池之间建立依赖关系。
The class definition is as follows:
类别定义如下:
NAME QueueAllocation DESCRIPTION A generic association used to establish a dependency relationship between a QueuingService object and a BufferPool object. DERIVED FROM Dependency ABSTRACT False PROPERTIES Antecedent[ref BufferPool[0..n]], Dependent[ref QueuingService[0..n]] AllocationPercentage
NAME QueueAllocation DESCRIPTION用于在QueuingService对象和BufferPool对象之间建立依赖关系的通用关联。派生自依赖项抽象假属性先行项[ref BufferPool[0..n]],依赖项[ref QueuingService[0..n]]AllocationPercentage
This property is inherited from the Dependency association, and overridden to serve as an object reference to a BufferPool object. This reference identifies the BufferPool in which packets on the QueuingService's queue are stored.
此属性从依赖项关联继承,并被重写以用作缓冲池对象的对象引用。此引用标识QueuingService队列上的数据包存储在其中的缓冲池。
This property is inherited from the Dependency association, and overridden to serve as an object reference to a QueuingService object. This reference identifies the QueuingService whose packets are being stored in the BufferPool's buffers.
此属性从依赖项关联继承,并被重写以用作QueuingService对象的对象引用。此引用标识其数据包存储在缓冲池缓冲区中的QueuingService。
This property is an 8-bit unsigned integer with minimum value of zero and maximum value of 100. It defines the percentage of the BufferPool that should be allocated to the referenced QueuingService. If absolute sizes are desired, this would be accomplished by defining individual BufferPools of the specified sizes, with QueueAllocation.AllocationPercentages set to 100.
此属性是一个8位无符号整数,最小值为零,最大值为100。它定义应分配给引用的QueuingService的缓冲池的百分比。如果需要绝对大小,可以通过定义指定大小的单个缓冲池来实现,QueueAllocation.AllocationPercentage设置为100。
This association is a subclass of the Dependency association. It relates one or more ClassifierElements with a FilterList representing the criteria for selecting packets for each of the ClassifierElements to process.
此关联是依赖关系关联的子类。它将一个或多个ClassifiedRelation与表示为每个要处理的ClassifiedRelation选择包的标准的过滤器列表相关联。
In the QDDIM model, a classifier is always modeled as a ClassifierService that aggregates a set of ClassifierElements. When ClassifierElements use the NextServiceAfterClassifierElement
In the QDDIM model, a classifier is always modeled as a ClassifierService that aggregates a set of ClassifierElements. When ClassifierElements use the NextServiceAfterClassifierElement
association to bind to another ClassifierService (to construct a hierarchical classifier), the ClassifierElementUsesFilterList association must not be specified.
关联要绑定到另一个ClassifierService(要构造分层分类器),不得指定ClassifierRelationUseSFilterList关联。
The class definition is as follows:
类别定义如下:
NAME ClassifierElementUsesFilterList DESCRIPTION An association relating a ClassifierElement to the FilterList representing the criteria for selecting packets for that ClassifierElement to process. DERIVED FROM Dependency ABSTRACT False PROPERTIES Antecedent[ref FilterList [0..1]], Dependent[ref ClassifierElement [0..n]]
NAME ClassificateRelation UseSFilterList DESCRIPTION将ClassificateRelation与FilterList关联起来的关联,表示为该ClassificateRelation选择要处理的数据包的标准。派生自依赖项抽象假属性先行项[ref FilterList[0..1]],依赖项[ref ClassificationRelation[0..n]]
This property is inherited from the Dependency association, and overridden to serve as an object reference to a FilterList object, instead of to the more general ManagedElement object. Also, its cardinality is restricted to 0 and 1, indicating that a ClassifierElement uses either one FilterList to select packets for it or no FilterList when the ClassifierElement uses the NextServiceAfterClassifierElement association to bind to another ClassifierService to form a hierarchical classifier.
此属性从依赖项关联继承,并被重写以用作FilterList对象的对象引用,而不是更一般的ManagedElement对象的对象引用。此外,它的基数限制为0和1,这表示ClassifierRelation使用一个FilterList为其选择数据包,或者当ClassifierRelation使用NextServiceAfterClassifierRelation关联绑定到另一个ClassifierService以形成分层分类器时,不使用FilterList。
This property is inherited from the Dependency association, and overridden to serve as an object reference to a ClassifierElement object, instead of to the more general ManagedElement object. This reference identifies a ClassifierElement that depends on the associated FilterList object to represent its packet-selection criteria.
此属性从依赖项关联继承,并被重写以用作ClassifiedRelation对象的对象引用,而不是更一般的ManagedElement对象的对象引用。此引用标识一个ClassifierRelation,该ClassifierRelation依赖于关联的FilterList对象来表示其数据包选择标准。
This association defines two object references that establish a dependency relationship between two AFService objects. This dependency is the precedence of the individual AF drop-related Services within an AF IP packet-forwarding class.
此关联定义了两个对象引用,用于在两个AFService对象之间建立依赖关系。此依赖关系是AF IP数据包转发类中各个AF丢弃相关服务的优先级。
The class definition is as follows:
类别定义如下:
NAME AFRelatedServices DESCRIPTION An association used to establish a dependency relationship between two AFService objects. DERIVED FROM Nothing ABSTRACT False PROPERTIES AFLowerDropPrecedence[ref AFService[0..1]], AFHigherDropPrecedence[ref AFService[0..n]]
名称AFRelatedServices描述用于在两个AFService对象之间建立依赖关系的关联。派生自LowerDropPreference[ref AFService[0..1]],AfHigherDropPreference[ref AFService[0..n]]的抽象假属性
This property serves as an object reference to an AFService object that has the lower probability of dropping packets.
此属性用作对丢弃数据包概率较低的AFService对象的对象引用。
This property serves as an object reference to an AFService object that has the higher probability of dropping packets.
此属性用作具有较高丢包概率的AFService对象的对象引用。
This association defines two object references that establish a predecessor-successor relationship between two ConditioningService objects. This association is used to indicate the sequence of ConditioningServices required to process a particular type of traffic.
此关联定义了两个对象引用,用于在两个ConditionService对象之间建立前置-后继关系。此关联用于指示处理特定类型流量所需的条件服务的顺序。
Instances of this dependency describe the various relationships between different ConditioningServices (such as classifiers, meters, droppers, etc.) that are used collectively to condition traffic. Both one-to-one and more complicated fan-in and/or fan-out relationships can be described. The ConditioningServices may feed one another directly, or they may be mapped to multiple "next" Services based on the characteristics of the packet.
此依赖关系的实例描述了共同用于调节流量的不同条件服务(如分类器、仪表、滴管等)之间的各种关系。可以描述一对一和更复杂的扇入和/或扇出关系。条件服务可以直接彼此馈送,或者可以基于分组的特征将它们映射到多个“下一个”服务。
The class definition is as follows:
类别定义如下:
NAME NextService DESCRIPTION An association used to establish a predecessor-successor relationship between two ConditioningService objects. DERIVED FROM Nothing ABSTRACT False PROPERTIES PrecedingService[ref ConditioningService[0..n]], FollowingService[ref ConditioningService[0..n]]
NAME NextService DESCRIPTION用于在两个ConditionService对象之间建立前置后继关系的关联。派生自Nothing抽象假属性PredingService[ref ConditioningService[0..n]],FollowingService[ref ConditioningService[0..n]]
This property serves as an object reference to a ConditioningService object that occurs earlier in the processing sequence for a given type of traffic.
此属性用作对给定类型流量的处理序列中较早出现的ConditioningService对象的对象引用。
This property serves as an object reference to a ConditioningService object that occurs later in the processing sequence for a given type of traffic, immediately after the ConditioningService identified by the PrecedingService object reference.
此属性用作对ConditionService对象的对象引用,该对象在给定类型的流量的处理序列中稍后发生,紧跟在前一个服务对象引用标识的ConditionService之后。
This association refines the definition of its superclass, the NextService association, in two ways:
此关联通过两种方式细化其超类NextService关联的定义:
o It restricts the PrecedingService object reference to the class ClassifierElement.
o 它将PredingService对象引用限制为类ClassificateRelation。
o It restricts the cardinality of the FollowingService object reference to exactly 1.
o 它将以下服务对象引用的基数限制为正好1。
The class definition is as follows:
类别定义如下:
NAME NextServiceAfterClassifierElement DESCRIPTION An association used to establish a predecessor-successor relationship between a single ClassifierElement within a Classifier and the next ConditioningService object that is responsible for further processing of the traffic selected by that ClassifierElement.
NAME NextServiceAfterClassificateRelation描述用于在分类器内的单个ClassificateRelation和负责进一步处理该ClassificateRelation所选流量的下一个ConditioningService对象之间建立前置-后续关系的关联。
DERIVED FROM NextService ABSTRACT False PROPERTIES PrecedingService [ref ClassifierElement[0..n]], FollowingService [ref ConditioningService[1..1]
派生自NextService抽象假属性PredingService[ref ClassificationRelation[0..n]],FollowingService[ref ConditioningService[1..1]
This property is inherited from the NextService association. It is overridden in this subclass to restrict the object reference to a ClassifierElement, as opposed to the more general ConditioningService defined in the NextService superclass.
此属性从NextService关联继承。它在这个子类中被重写,以将对象引用限制为ClassifiedRelation,而不是在NextService超类中定义的更一般的ConditioningService。
This property serves as an object reference to a ClassifierElement, which is a component of a single ClassifierService. Packets selected by this ClassifierElement are always passed to the ConditioningService identified by the FollowingService object reference.
此属性用作ClassifierRelation的对象引用,ClassifierRelation是单个ClassifierService的组件。此ClassificateRelation选择的数据包始终传递给由以下服务对象引用标识的ConditioningService。
This property is inherited from the NextService association. It is overridden in this subclass to restrict the cardinality of the reference to exactly 1. This reflects the requirement that the behavior of a DiffServ classifier must be deterministic: the packets selected by a given ClassifierElement in a given ClassifierService must always go to one and only one next ConditioningService.
此属性从NextService关联继承。在这个子类中,它被重写,以将引用的基数限制为1。这反映了DiffServ分类器的行为必须是确定性的要求:由给定ClassifierService中的给定ClassifierRelation选择的数据包必须始终指向一个且仅指向下一个ConditioningService。
This association is a subclass of NextService, and defines two object references that establish a predecessor-successor relationship between PacketSchedulingServices. In a hierarchical queuing configuration where a second scheduler treats the output of a first scheduler as a single, aggregated input, the two schedulers are related via the NextScheduler association.
此关联是NextService的一个子类,定义了两个对象引用,用于在PacketSchedulingServices之间建立前置-后继关系。在分层队列配置中,第二个调度器将第一个调度器的输出视为单个聚合输入,这两个调度器通过NextScheduler关联进行关联。
The class definition is as follows:
类别定义如下:
NAME NextScheduler DESCRIPTION An association used to establish predecessor-successor relationships between PacketSchedulingService objects for simple hierarchical scheduling. DERIVED FROM NextService ABSTRACT False
NAME NextScheduler DESCRIPTION用于在PacketSchedulingService对象之间建立前置后继关系的关联,以实现简单的分层调度。派生自NextService抽象False
PROPERTIES PrecedingService[ref PacketSchedulingService[0..n]], FollowingService[ref PacketSchedulingService[0..1]]
属性PredingService[ref-PacketSchedulingService[0..n]],FollowingService[ref-PacketSchedulingService[0..1]]
This property is inherited from the NextService association, and overridden to serve as an object reference to a PacketSchedulingService object (instead of to the more general ConditioningService object). This reference identifies a scheduler whose output is being treated as a single, aggregated input by the scheduler identified by the FollowingService reference. The [0..n] cardinality indicates that a single FollowingService scheduler may bring together the aggregated outputs of multiple prior schedulers.
此属性从NextService关联继承,并被重写以用作PacketSchedulingService对象(而不是更一般的ConditioningService对象)的对象引用。此引用标识一个调度器,其输出被以下服务引用标识的调度器视为单个聚合输入。[0..n]基数表示单个后续服务调度器可以将多个先前调度器的聚合输出合并在一起。
This property is inherited from the NextService association, and overridden to serve as an object reference to a PacketSchedulingService object (instead of to the more general ConditioningService object). This reference identifies a scheduler that includes among its inputs the aggregated outputs of one or more PrecedingService schedulers.
此属性从NextService关联继承,并被重写以用作PacketSchedulingService对象(而不是更一般的ConditioningService对象)的对象引用。此引用标识一个调度器,该调度器在其输入中包括一个或多个PredingService调度器的聚合输出。
This association is a subclass of the NextScheduler association. FailNextScheduler represents the relationship between two schedulers when the first scheduler passes up a scheduling opportunity (thereby behaving in a non-work conserving manner), and makes the resulting bandwidth available to the second scheduler for its use. See Sections 3.11.3 and 3.11.4 for examples of where this association might be used.
此关联是NextScheduler关联的子类。FailNextScheduler表示当第一个调度器放弃调度机会(从而以非工作节约方式运行)时,两个调度器之间的关系,并使生成的带宽可供第二个调度器使用。参见第3.11.3节和第3.11.4节,了解可能使用该关联的示例。
The class definition is as follows:
类别定义如下:
NAME FailNextScheduler DESCRIPTION This association specializes the NextScheduler association. It establishes a relationship between a non-work-conserving scheduler and a second scheduler to which it makes available the bandwidth that it elects not to use. DERIVED FROM NextScheduler ABSTRACT False
名称FailNextScheduler描述此关联专门用于NextScheduler关联。它在不节省工作的调度器和第二个调度器之间建立了一种关系,该调度器向第二个调度器提供它选择不使用的带宽。派生自NextScheduler摘要False
PROPERTIES PrecedingService[ref NonWorkConservingSchedulingService[0..n]]
属性预处理服务[ref NonWorkSavingSchedulingService[0..n]]
This property is inherited from the NextScheduler association, and overridden to serve as an object reference to a NonWorkConservingSchedulingService object (instead of to the more general PacketSchedulingService object). This reference identifies a non-work-conserving scheduler whose excess bandwidth is being made available to the scheduler identified by the FollowingService reference. The [0..n] cardinality indicates that a single FollowingService scheduler may have the opportunity to use the unused bandwidth of multiple prior non-work-conserving schedulers.
此属性从NextScheduler关联中继承,并被重写以用作非WorkConservingSchedulingService对象(而不是更一般的PacketSchedulingService对象)的对象引用。此引用标识了一个非节省工作的调度程序,该调度程序的多余带宽可供以下服务引用标识的调度程序使用。[0..n]基数表示单个Following Service scheduler可能有机会使用多个先前的非工作节省调度器的未使用带宽。
This association describes a predecessor-successor relationship between a MeterService and one or more ConditioningService objects that process traffic from the meter. For example, for devices that implement preamble marking, the FollowingService reference (after the meter) is a PreambleMarkerService, to record the results of the metering in the preamble.
此关联描述MeterService与处理来自meter的流量的一个或多个ConditioningService对象之间的前置-后继关系。例如,对于实现前导标记的设备,以下服务参考(在仪表之后)是前导标记服务,用于在前导中记录测量结果。
It might be expected that the NextServiceAfterMeter association would subclass from NextService. However, meters are 1:n fan-out elements, and require a mechanism to distinguish between the different results/outputs of the meter. Therefore, this association defines a new key property, MeterResult, which is used to record the result and identify the output through which this traffic left the meter. Because of this additional key, NextServiceAfterMeter cannot be a subclass of NextService.
可以预期,NextServiceAfterMeter关联将从NextService派生子类。但是,仪表是1:n扇出元件,需要一种机制来区分仪表的不同结果/输出。因此,此关联定义了一个新的密钥属性MeterResult,该属性用于记录结果并标识此流量离开仪表的输出。由于此附加键,NextServiceAfterMeter不能是NextService的子类。
The class definition is as follows:
类别定义如下:
NAME NextServiceAfterMeter DESCRIPTION An association used to establish a predecessor-successor relationship between a particular output of a MeterService and the next ConditioningService object that is responsible for further processing of the traffic. DERIVED FROM Nothing ABSTRACT False
NAME NextServiceAfterMeter DESCRIPTION用于在MeterService的特定输出和负责进一步处理流量的下一个ConditionService对象之间建立前置-后继关系的关联。源于虚无
PROPERTIES PrecedingService[ref MeterService[0..n]], FollowingService[ref ConditioningService[0..n]], MeterResult
属性前服务[ref MeterService[0..n]],后服务[ref ConditioningService[0..n]],MeterResult
The preceding MeterService, 'earlier' in the processing sequence for a packet. Since Meters are 1:n fan-out devices, this relationship associates a particular output of a MeterService (identified by the MeterResult property) to the next ConditioningService that is used to further process the traffic.
前面的MeterService在数据包的处理序列中为“早”。由于仪表是1:n扇出设备,此关系将MeterService(由MeterResult属性标识)的特定输出与用于进一步处理流量的下一个ConditioningService相关联。
The 'next' or following ConditioningService.
“下一个”或后续条件服务。
This property is an enumerated 16-bit unsigned integer, and represents information describing the result of the metering. Traffic is distinguished as being conforming, non-conforming, or partially conforming. More complicated metering can be built either by extending the enumeration or by cascading meters.
此属性是一个枚举的16位无符号整数,表示描述计量结果的信息。流量被区分为符合、不符合或部分符合。更复杂的计量可以通过扩展枚举或级联仪表来构建。
The enumerated values are: "Unknown" (0), "Conforming" (1), "PartiallyConforming" (2), "NonConforming" (3).
枚举值为:“未知”(0)、“一致”(1)、“部分一致”(2)、“不一致”(3)。
This is a top-level association, representing the relationship between a queue (QueuingService) and a SchedulingElement. The SchedulingElement, in turn, represents the information in a packet scheduling service that is specific to this queue, such as relative priority or allocated bandwidth.
这是一个顶级关联,表示队列(QueuingService)和SchedulingElement之间的关系。SchedulingElement反过来表示特定于该队列的数据包调度服务中的信息,例如相对优先级或分配的带宽。
It cannot be expressed formally with the association cardinalities, but there is an additional constraint on participation in this association. A particular instance of (a subclass of) SchedulingElement always participates either in exactly one instance of this association, or in exactly one instance of the association SchedulingServiceToSchedule.
它不能用协会基数正式表示,但在参与该协会方面还有一个额外的限制。SchedulingElement(的子类)的特定实例始终仅参与此关联的一个实例,或仅参与关联SchedulingServicesSchedule的一个实例。
The class definition is as follows:
类别定义如下:
NAME QueueToSchedule DESCRIPTION This association relates a queue to the SchedulingElement containing information specific to the queue. DERIVED FROM Nothing ABSTRACT False PROPERTIES Queue[ref QueuingService[0..1]], SchedElement[ref SchedulingElement[0..n]]
名称QueueToSchedule描述此关联将队列与包含队列特定信息的SchedulingElement关联。派生自Nothing抽象假属性队列[ref QueuingService[0..1]],SchedElement[ref SchedulingElement[0..n]]
This property serves as an object reference to a QueuingService object. A QueuingService object may be associated 0 or more SchedulingElement objects.
此属性用作QueuingService对象的对象引用。QueuingService对象可能与0个或多个SchedulingElement对象关联。
This property serves as an object reference to a SchedulingElement object. A SchedulingElement is always associated either with exactly one QueuingService or with exactly one upstream scheduler (PacketSchedulingService).
此属性用作SchedulingElement对象的对象引用。SchedulingElement始终与一个QueuingService或一个上游调度器(PacketSchedulingService)关联。
This is a top-level association, representing the relationship between a scheduler (PacketSchedulingService) and a SchedulingElement, in a configuration involving cascaded schedulers. The SchedulingElement, in turn, represents the information in a subsequent packet scheduling service that is specific to this scheduler, such as relative priority or allocated bandwidth.
这是一个顶级关联,表示在涉及级联调度器的配置中,调度器(PacketSchedulingService)和SchedulingElement之间的关系。SchedulingElement反过来表示特定于该调度器的后续数据包调度服务中的信息,例如相对优先级或分配的带宽。
It cannot be expressed formally with the association cardinalities, but there is an additional constraint on participation in this association. A particular instance of (a subclass of) SchedulingElement always participates either in exactly one instance of this association, or in exactly one instance of the association QueueToSchedule.
它不能用协会基数正式表示,但在参与该协会方面还有一个额外的限制。SchedulingElement(的子类)的特定实例始终仅参与此关联的一个实例,或仅参与关联QueueToSchedule的一个实例。
The class definition is as follows:
类别定义如下:
NAME SchedulingServiceToSchedule DESCRIPTION This association relates a scheduler to the SchedulingElement in a subsequent scheduler containing information specific to this scheduler.
名称SchedulingServicesSchedule描述此关联将计划程序与包含此计划程序特定信息的后续计划程序中的SchedulingElement关联。
DERIVED FROM Nothing ABSTRACT False PROPERTIES SchedService[ref PacketSchedulingService[0..1]], SchedElement[ref SchedulingElement[0..n]]
派生自Nothing抽象属性SchedService[ref PacketSchedulingService[0..1]],SchedElement[ref SchedulingElement[0..n]]
This property serves as an object reference to a PacketSchedulingService object. A PacketSchedulingService object may be associated 0 or more SchedulingElement objects.
此属性用作PacketSchedulingService对象的对象引用。PacketSchedulingService对象可能与0个或多个SchedulingElement对象关联。
This property serves as an object reference to a SchedulingElement object. A SchedulingElement is always associated either with exactly one QueuingService or with exactly one upstream scheduler (PacketSchedulingService).
此属性用作SchedulingElement对象的对象引用。SchedulingElement始终与一个QueuingService或一个上游调度器(PacketSchedulingService)关联。
This aggregation is a generic relationship used to model the aggregation of a set of ManagedElements in a generalized Collection object. The aggregation's cardinality is many to many.
此聚合是一种泛型关系,用于对通用集合对象中一组ManagedElement的聚合进行建模。聚合的基数是多对多。
MemberOfCollection is defined in the Core Model of CIM. Please refer to [CIM] for the full definition of this class.
MemberOfCollection在CIM的核心模型中定义。有关此类的完整定义,请参阅[CIM]。
This aggregation models the ability to treat a set of buffers as a pool, or collection, that can in turn be contained in a "higher-level" buffer pool. This class overrides the more generic MemberOfCollection aggregation to restrict both the aggregate and the part component objects to be instances only of the BufferPool class.
这种聚合建模了将一组缓冲区视为池或集合的能力,而池或集合又可以包含在“更高级别”的缓冲池中。此类重写更通用的MemberOfCollection聚合,以将聚合对象和零件组件对象都限制为BufferPool类的实例。
The class definition for the aggregation is as follows:
聚合的类定义如下所示:
NAME CollectedBufferPool DESCRIPTION A generic association used to aggregate a set of related buffers into a higher-level buffer pool. DERIVED FROM MemberOfCollection ABSTRACT False PROPERTIES Collection[ref BufferPool[0..1]], Member[ref BufferPool[0..n]]
NAME CollectedBufferPool DESCRIPTION用于将一组相关缓冲区聚合到更高级别的缓冲池中的通用关联。派生自MemberOfCollection抽象属性集合[ref BufferPool[0..1]],成员[ref BufferPool[0..n]]
This property represents the parent, or aggregate, object in the relationship. It is a BufferPool object.
此属性表示关系中的父对象或聚合对象。它是一个缓冲池对象。
This property represents the child, or lower level pool, in the relationship. It is one of the set of BufferPools that together make up the higher-level pool.
此属性表示关系中的子池或低级池。它是共同构成更高级别池的缓冲池集合之一。
This abstract aggregation is a generic relationship used to establish "part-of" relationships between managed objects (named GroupComponent and PartComponent). The association's cardinality is many to many.
此抽象聚合是一种通用关系,用于在托管对象(命名为GroupComponent和PartComponent)之间建立“部分”关系。协会的基本原则是多对多。
The association is defined in the Core Model of CIM. Please refer to [CIM] for the full definition of this class.
关联在CIM的核心模型中定义。有关此类的完整定义,请参阅[CIM]。
This aggregation is used to model a set of subordinate Services that are aggregated together to form a higher-level Service. This aggregation is derived from the more generic Component superclass to restrict the types of objects that can participate in this relationship. The association's cardinality is many to many.
此聚合用于对一组次级服务进行建模,这些次级服务聚合在一起形成更高级别的服务。此聚合派生自更通用的组件超类,以限制可参与此关系的对象的类型。协会的基本原则是多对多。
The association is defined in the Core Model of CIM. Please refer to [CIM] for the full definition of this class.
关联在CIM的核心模型中定义。有关此类的完整定义,请参阅[CIM]。
This aggregation represents a set of subordinate QoSService objects (that is, a set of instances of subclasses of the QoSService class) that are aggregated together to form a higher-level QoSService. A QoSService is a specific type of Service that conceptualizes QoS functionality as a set of coordinated sub-services.
此聚合表示一组次级QoSService对象(即QoSService类的子类的一组实例),这些对象聚合在一起以形成更高级别的QoSService。QoS服务是一种特定类型的服务,它将QoS功能概念化为一组协调的子服务。
This aggregation is derived from the more generic ServiceComponent superclass to restrict the types of objects that can participate in this relationship to QoSService objects, instead of a more generic Service object. It also restricts the cardinality of the aggregate to 0-or-1 (instead of the more generic 0-or-more).
此聚合源自更通用的ServiceComponent超类,用于将可参与此关系的对象类型限制为QoSService对象,而不是更通用的服务对象。它还将聚合的基数限制为0或1(而不是更通用的0或1)。
The class definition for the aggregation is as follows:
聚合的类定义如下所示:
NAME QoSSubService DESCRIPTION A generic association used to establish "part-of" relationships between a higher-level QoSService object and the set of lower-level QoSServices that are aggregated to create/form it. DERIVED FROM ServiceComponent ABSTRACT False PROPERTIES GroupComponent[ref QoSService[0..1]], PartComponent[ref QoSService[0..n]]
名称QoSService DESCRIPTION一种通用关联,用于在高级QoSService对象和聚合以创建/形成它的一组低级QoSService之间建立“部分”关系。派生自ServiceComponent抽象属性GroupComponent[ref QossService[0..1]],PartComponent[ref QossService[0..n]]
This property is overridden in this aggregation to represent an object reference to a QoSService object (instead of to the more generic Service object defined in its superclass). This object represents the parent, or aggregate, object in the relationship.
该属性在此聚合中被重写,以表示对QoSService对象(而不是对其超类中定义的更通用的服务对象)的对象引用。此对象表示关系中的父对象或聚合对象。
This property is overridden in this aggregation to represent an object reference to a QoSService object (instead of to the more generic Service object defined in its superclass). This object represents the child, or "component", object in the relationship.
该属性在此聚合中被重写,以表示对QoSService对象(而不是对其超类中定义的更通用的服务对象)的对象引用。此对象表示关系中的子对象或“组件”。
This aggregation identifies the set of conditioning services that together condition traffic for a particular QoS service.
此聚合标识了一组调节服务,这些服务共同调节特定QoS服务的流量。
This aggregation is derived from the more generic ServiceComponent superclass; it restricts the types of objects that can participate in it to ConditioningService and QoSService objects, instead of the more generic Service objects.
此聚合源自更通用的ServiceComponent超类;它将可以参与的对象类型限制为ConditioningService和QoSService对象,而不是更通用的服务对象。
The class definition for the aggregation is as follows:
聚合的类定义如下所示:
NAME QoSConditioningSubService DESCRIPTION A generic aggregation used to establish "part-of" relationships between a set of ConditioningService objects and the particular QoSService object(s) that they provide traffic conditioning for. DERIVED FROM ServiceComponent ABSTRACT False
名称QosConditionSubService描述用于在一组ConditionService对象和为其提供流量调节的特定QoSService对象之间建立“部分”关系的通用聚合。派生自ServiceComponent抽象False
PROPERTIES GroupComponent[ref QoSService[0..n]], PartComponent[ref ConditioningService[0..n]]
属性GroupComponent[ref QoSService[0..n]],PartComponent[ref ConditioningService[0..n]]
This property is overridden in this aggregation to represent an object reference to a QoSService object (instead of to the more generic Service object defined in its superclass). The cardinality of the reference remains 0..n, to indicate that a given ConditioningService may provide traffic conditioning for 0, 1, or more than 1 QoSService objects.
该属性在此聚合中被重写,以表示对QoSService对象(而不是对其超类中定义的更通用的服务对象)的对象引用。引用的基数保持为0..n,以指示给定的ConditioningService可能为0、1或1个以上的QoSService对象提供流量调节。
This object represents the parent, or aggregate, object in the association. In this case, this object represents the QoSService that aggregates one or more ConditioningService objects to implement the appropriate traffic conditioning for its traffic.
此对象表示关联中的父对象或聚合对象。在这种情况下,此对象表示QoSService,该QoSService聚合了一个或多个ConditioningService对象,以为其流量实现适当的流量调节。
This property is overridden in this aggregation to represent an object reference to a ConditioningService object (instead of to the more generic Service object defined in its superclass). This object represents the child, or "component", object in the relationship. In this case, this object represents one or more ConditioningService objects that together indicate how traffic for a specific QoSService is conditioned.
此聚合中重写此属性,以表示对ConditioningService对象(而不是其超类中定义的更通用的服务对象)的对象引用。此对象表示关系中的子对象或“组件”。在这种情况下,此对象表示一个或多个ConditioningService对象,这些对象一起指示特定QoS服务的流量是如何调节的。
This aggregation represents the relationship between a classifier and the classifier elements that provide the fan-out function for the classifier. A classifier typically aggregates multiple classifier elements. A classifier element, however, is aggregated only by a single classifier. See [DSMODEL] and [DSMIB] for more about classifiers and classifier elements.
此聚合表示分类器和为分类器提供扇出功能的分类器元素之间的关系。分类器通常聚合多个分类器元素。然而,分类器元素仅由单个分类器聚合。有关分类器和分类器元素的更多信息,请参见[DSMODEL]和[DSMIB]。
The class definition for the aggregation is as follows:
聚合的类定义如下所示:
NAME ClassifierElementInClassifierService DESCRIPTION An aggregation representing the relationship between a classifier and its classifier elements. DERIVED FROM ServiceComponent ABSTRACT False
名称ClassifierRelationInClassifierService描述表示分类器及其分类器元素之间关系的聚合。派生自ServiceComponent抽象False
PROPERTIES GroupComponent[ref ClassifierService[1..1]], PartComponent[ref ClassifierElement[0..n], ClassifierOrder
属性GroupComponent[ref ClassifierService[1..1]],PartComponent[ref ClassifierRelation[0..n],ClassifierOrder
This property is overridden in this aggregation to represent an object reference to a ClassifierService object (instead of to the more generic Service object defined in its superclass). It also restricts the cardinality of the aggregate to 1..1 (instead of the more generic 0-or-more), representing the fact that a ClassifierElement always exists within the context of exactly one ClassifierService.
此聚合中重写此属性,以表示对ClassifierService对象(而不是其超类中定义的更通用的服务对象)的对象引用。它还将聚合的基数限制为1..1(而不是更通用的0或更多),表示ClassifierRelation始终存在于恰好一个ClassifierService的上下文中。
This property is overridden in this aggregation to represent an object reference to a ClassifierElement object (instead of to the more generic Service object defined in its superclass). This object represents a single traffic selector for the classifier. A ClassifierElement usually has an association to a FilterList that provides selection criteria for packets from the traffic stream coming into the classifier, and to a ConditioningService to which packets selected by these criteria are next forwarded.
此聚合中重写此属性,以表示对ClassifiedRelation对象(而不是其超类中定义的更通用的服务对象)的对象引用。此对象表示分类器的单个流量选择器。ClassifierRelation通常与FilterList关联,FilterList为来自进入分类器的业务流的数据包提供选择标准,与ConditionService关联,ConditionService通过这些标准选择的数据包随后被转发到该服务。
Because the filters for a classifier can overlap, it is necessary to specify the order in which the ClassifierElements aggregated by a ClassifierService are presented with packets coming into the classifier. This property is an unsigned 32-bit integer representing this order. Values are represented in ascending order: first '1', then '2', and so on. Different values MUST be assigned for each of the ClassifierElements aggregated by a given ClassifierService.
由于分类器的过滤器可能重叠,因此有必要指定分类器服务聚合的分类器关联与进入分类器的数据包呈现的顺序。此属性是表示此顺序的无符号32位整数。值以升序表示:首先是“1”,然后是“2”,依此类推。必须为给定ClassifierService聚合的每个ClassifierRelation分配不同的值。
This aggregation is a specialization of the Component aggregation; it is used to define a set of filter entries (subclasses of FilterEntryBase) that are aggregated by a FilterList.
此聚合是组件聚合的专门化;它用于定义一组过滤器条目(FilterEntryBase的子类),这些条目由过滤器列表聚合。
The cardinalities of the aggregation itself are 0..1 on the FilterList end, and 0..n on the FilterEntryBase end. Thus in the general case, a filter entry can exist without being aggregated into
聚合本身的基数在FilterList端为0..1,在FilterEntryBase端为0..n。因此,在一般情况下,筛选器条目可以存在,而无需聚合到
any FilterList. However, the only way a filter entry can figure in the QoS Device model is by being aggregated into a FilterList by this aggregation.
任何过滤列表。但是,在QoS设备模型中显示筛选器条目的唯一方法是通过此聚合将其聚合到筛选器列表中。
See [PCIME] for the definition of this aggregation.
有关此聚合的定义,请参见[PCIME]。
This concrete aggregation represents the relationship between a PacketSchedulingService and the set of SchedulingElements that tie it to its inputs.
此具体聚合表示PacketSchedulingService与将其与输入绑定在一起的SchedulingElements集之间的关系。
The class definition for the aggregation is as follows:
聚合的类定义如下所示:
NAME ElementInSchedulingService DESCRIPTION An aggregation used to tie a PacketSchedlingService to the configuration information for one of the elements (either a QueuingService or another PacketSchedulingService) that it schedules. DERIVED FROM Component ABSTRACT False PROPERTIES GroupComponent[ref PacketSchedulingService[0..1]], PartComponent[ref SchedulingElement[1..n]
NAME ElementInSchedulingService DESCRIPTION用于将PacketSchedulingService与它调度的其中一个元素(QueuingService或另一个PacketSchedulingService)的配置信息联系起来的聚合。派生自组件抽象属性GroupComponent[ref PacketSchedulingService[0..1]],PartComponent[ref SchedulingElement[1..n]
This property is overridden in this aggregation to represent an object reference to a PacketSchedulingService object (instead of to the more generic Service object defined in its superclass). It also restricts the cardinality of the aggregate to 0..1 (instead of the more generic 0-or-more), representing the fact that a SchedulingElement exists within the context of at most one PacketSchedulingService.
此聚合中重写此属性,以表示对PacketSchedulingService对象(而不是其超类中定义的更通用的服务对象)的对象引用。它还将聚合的基数限制为0..1(而不是更通用的0或更多),表示SchedulingElement最多存在于一个PacketSchedulingService的上下文中。
This property is overridden in this aggregation to represent an object reference to a SchedulingElement object (instead of to the more generic Service object defined in its superclass). This object represents a single scheduling element for the scheduler. It also restricts the cardinality of the SchedulingElement to 1..n (instead of the more generic 0-or-more), representing the fact that a PacketSchedulingService always includes at least one SchedulingElement.
此聚合中重写此属性,以表示对SchedulingElement对象(而不是其超类中定义的更通用的服务对象)的对象引用。此对象表示调度程序的单个调度元素。它还将SchedulingElement的基数限制为1..n(而不是更通用的0或更多),表示PacketSchedulingService始终至少包含一个SchedulingElement。
The IETF takes no position regarding the validity or scope of any intellectual property or other rights that might be claimed to pertain to the implementation or use of the technology described in this document or the extent to which any license under such rights might or might not be available; neither does it represent that it has made any effort to identify any such rights. Information on the IETF's procedures with respect to rights in standards-track and standards-related documentation can be found in BCP-11.
IETF对可能声称与本文件所述技术的实施或使用有关的任何知识产权或其他权利的有效性或范围,或此类权利下的任何许可可能或可能不可用的程度,不采取任何立场;它也不表示它已作出任何努力来确定任何此类权利。有关IETF在标准跟踪和标准相关文件中权利的程序信息,请参见BCP-11。
Copies of claims of rights made available for publication and any assurances of licenses to be made available, or the result of an attempt made to obtain a general license or permission for the use of such proprietary rights by implementers or users of this specification can be obtained from the IETF Secretariat.
可从IETF秘书处获得可供发布的权利声明副本和任何许可证保证,或本规范实施者或用户试图获得使用此类专有权利的一般许可证或许可的结果。
The IETF invites any interested party to bring to its attention any copyrights, patents or patent applications, or other proprietary rights which may cover technology that may be required to practice this standard. Please address the information to the IETF Executive Director.
IETF邀请任何相关方提请其注意任何版权、专利或专利申请,或其他可能涉及实施本标准所需技术的专有权利。请将信息发送给IETF执行董事。
The authors wish to thank the participants of the Policy Framework and Differentiated Services working groups for their many helpful comments and suggestions. Special thanks to Joel Halpern, who provided some key technical direction during the latter stages of the document's development.
作者希望感谢政策框架和差异化服务工作组的与会者提出了许多有益的意见和建议。特别感谢Joel Halpern,他在文档开发的后期提供了一些关键技术指导。
Like [PCIM] and [PCIME], this document defines an information model that cannot be implemented directly. Consequently, security issues do not arise until it is mapped to an actual, implementable data model such as a MIB, PIB, or LDAP schema. See [PCIM] for a general discussion of security considerations for information models. See also [DSMIB] (which in fact is a data model that corresponds to a large extent with the QDDIM information model), for a discussion of the security implications of specific objects in the model.
与[PCIM]和[PCIME]一样,本文档定义了一个无法直接实现的信息模型。因此,在映射到实际的、可实现的数据模型(如MIB、PIB或LDAP模式)之前,不会出现安全问题。有关信息模型安全注意事项的一般性讨论,请参见[PCIM]。关于模型中特定对象的安全含义的讨论,另请参见[DSMIB](实际上是一个在很大程度上与QDDIM信息模型相对应的数据模型)。
[CIM] Common Information Model (CIM) Schema, version 2.5. Distributed Management Task Force, Inc., available at http://www.dmtf.org/standards/cim_schema_v25.php.
[CIM]公共信息模型(CIM)模式,版本2.5。分布式管理任务组公司,可在http://www.dmtf.org/standards/cim_schema_v25.php.
[IEEE802Q] Virtual Bridged Local Area Networks, ANSI/IEEE std 802.1Q, 1998 edition. Approved December 8, 1998
[IEEE802Q]虚拟桥接局域网,ANSI/IEEE标准802.1Q,1998年版。一九九八年十二月八日批准
[PCIM] Moore, B., Ellesson, E., Strassner, J. and A. Westerinen, "Policy Core Information Model - Version 1 Specification", RFC 3060, February 2001.
[PCIM]Moore,B.,Ellesson,E.,Strassner,J.和A.Westerinen,“政策核心信息模型-第1版规范”,RFC 3060,2001年2月。
[PCIME] Moore, B., Ed., "Policy Core Information Model (PCIM) Extensions", RFC 3460, January 2003.
[PCIME]Moore,B.,Ed.,“政策核心信息模型(PCIM)扩展”,RFC 3460,2003年1月。
[R791] Postel, J., "Internet Protocol", STD 5, RFC 791, September 1981.
[R791]Postel,J.,“互联网协议”,STD 5,RFC 7911981年9月。
[R2119] Bradner, S., "Key words for use in RFCs to Indicate Requirement Levels", BCP 14, RFC 2119, March 1997.
[R2119]Bradner,S.,“RFC中用于表示需求水平的关键词”,BCP 14,RFC 2119,1997年3月。
[R2474] Nichols, K., Blake, S., Baker, F. and D. Black, "Definition of the Differentiated Services Field (DS Field) in the IPv4 and IPv6 Headers", RFC 2474, December 1998.
[R2474]Nichols,K.,Blake,S.,Baker,F.和D.Black,“IPv4和IPv6标头中区分服务字段(DS字段)的定义”,RFC 2474,1998年12月。
[R2597] Heinanen, J., Baker, F., Weiss, W. and J. Wroclawski, "Assured Forwarding PHB Group", RFC 2597, June 1999.
[R2597]Heinanen,J.,Baker,F.,Weiss,W.和J.Wroclawski,“保付PHB集团”,RFC 25971999年6月。
[R3140] Black, D., Brim, S., Carpenter, B. and F. Le Faucheur, "Per Hop Behavior Identification Codes", RFC 3140, June 2001.
[R3140]Black,D.,Brim,S.,Carpenter,B.和F.Le Faucheur,“每跳行为识别码”,RFC 31402001年6月。
[DSMIB] Baker, F., Chan, K. and A. Smith, "Management Information Base for the Differentiated Services Architecture", RFC 3289, May 2002.
[DSMIB]Baker,F.,Chan,K.和A.Smith,“差异化服务体系结构的管理信息库”,RFC 3289,2002年5月。
[DSMODEL] Bernet, Y., Blake, S., Grossman, D. and A. Smith, "An Informal Management Model for DiffServ Routers", RFC 3290, May 2002.
[DSMODEL]Bernet,Y.,Blake,S.,Grossman,D.和A.Smith,“区分服务路由器的非正式管理模型”,RFC 32902002年5月。
[PIB] Chan, K., Sahita, R., Hahn, S. and K. McCloghrie, "Differentiated Services Quality of Service Policy Information Base", RFC 3317, March 2003.
[PIB]Chan,K.,Sahita,R.,Hahn,S.和K.McCloghrie,“差异化服务质量服务政策信息库”,RFC 33172003年3月。
[POLTERM] Westerinen, A., Schnizlein, J., Strassner, J., Scherling, M., Quinn, B., Herzog, S., Huynh, A., Carlson, M., Perry, J. and S. Waldbusser, "Terminology for Policy-Based Management", RFC 3198, November 2001.
[POLTERM]Westerinen,A.,Schnizlein,J.,Strassner,J.,Scherling,M.,Quinn,B.,Herzog,S.,Huynh,A.,Carlson,M.,Perry,J.和S.Waldbusser,“基于政策的管理术语”,RFC 3198,2001年11月。
[QPIM] Snir, Y., Ramberg, Y., Strassner, J., Cohen, R. and B. Moore, "Policy Quality of Service (QoS) Information Model", RFC 3644, November 2003.
[QPIM]Snir,Y.,Ramberg,Y.,Strassner,J.,Cohen,R.和B.Moore,“政策服务质量(QoS)信息模型”,RFC 36442003年11月。
[R1633] Braden, R., Clark, D. and S. Shenker, "Integrated Services in the Internet Architecture: An Overview", RFC 1633, June 1994.
[R1633]Braden,R.,Clark,D.和S.Shenker,“互联网体系结构中的综合服务:概述”,RFC 1633,1994年6月。
[R2475] Blake, S., Black, D., Carlson, M., Davies, E., Wang, Z. and W. Weiss, "An Architecture for Differentiated Service", RFC 2475, December 1998.
[R2475]Blake,S.,Black,D.,Carlson,M.,Davies,E.,Wang,Z.和W.Weiss,“差异化服务架构”,RFC 24751998年12月。
[R3246] Davie, B., Charny, A., Bennet, J.C.R., Benson, K., Le Boudec, J.Y., Courtney, W., Davari, S., Firoiu, V. and D. Stiliadis, "An Expedited Forwarding PHB (Per-Hop Behavior)", RFC 3246, March 2002.
[R3246]Davie,B.,Charny,A.,Bennet,J.C.R.,Benson,K.,Le Boudec,J.Y.,Courtney,W.,Davari,S.,Firoiu,V.和D.Stiliadis,“快速转发PHB(每跳行为)”,RFC 32462002年3月。
[RED] See http://www.aciri.org/floyd/red.html
[RED] See http://www.aciri.org/floyd/red.html
Following the precedent established in [PCIM], this document has placed the details of how to name instances of its classes in a native CIM implementation here in an appendix. Since Appendix A in [PCIM] has a lengthy discussion of the general principles of CIM naming, this appendix does not repeat that information here. Readers interested in a more global discussion of how instances are named in a native CIM implementation should refer to [PCIM].
遵循[PCIM]中确立的先例,本文档在附录中详细介绍了如何在本机CIM实现中命名其类的实例。由于[PCIM]中的附录A对CIM命名的一般原则进行了冗长的讨论,本附录在此不再重复该信息。对于如何在本机CIM实现中命名实例的更全面的讨论感兴趣的读者,应参考[PCIM]。
Most of the classes defined in this model are derived from the CIM class Service. Although Service is an abstract class, it nevertheless has key properties included as part of its definition. The purpose of including key properties in an abstract class is to have instances of all of its instantiable subclasses named in the same way. Thus, the majority of the classes in this model name their instances in exactly the same way: with the two key properties CreationClassName and Name that they inherit from Service.
此模型中定义的大多数类都派生自CIM类服务。尽管服务是一个抽象类,但它仍包含关键属性作为其定义的一部分。在抽象类中包含键属性的目的是以相同的方式命名其所有可实例化子类的实例。因此,该模型中的大多数类以完全相同的方式命名它们的实例:使用CreationClassName和它们从服务继承的name这两个关键属性。
Like Service, FilterEntryBase (defined in [PCIME]) is an abstract class that includes key properties in its definition. FilterEntryBase has four key properties. Two of them, SystemCreationClassName and SystemName, are propagated to it via the weak association FilterEntryInSystem. The other two, CreationClassName and Name, are native to FilterEntryBase.
与服务类似,FilterEntryBase(在[PCIME]中定义)是一个抽象类,在其定义中包含关键属性。FilterEntryBase有四个关键属性。其中两个,SystemCreationClassName和SystemName,通过弱关联FilterEntrySystem传播到它。另外两个,CreationClassName和Name,是FilterEntryBase的固有特性。
Thus, instances of all of the subclasses of FilterEntryBase, including the PreambleFilter class defined here, are named in the same way: with the four key properties they inherit from FilterEntryBase.
因此,FilterEntryBase的所有子类的实例(包括此处定义的PreambleFilter类)的命名方式相同:它们具有从FilterEntryBase继承的四个关键属性。
The class ProtocolEndpoint inherits its key properties from its superclass, ServiceAccessPoint. These key properties provide the same naming structure that we've seen before: two propagated key properties SystemCreationClassName and SystemName, plus two native key properties CreationClassName and Name.
类ProtocolEndpoint从其超类ServiceAccessPoint继承其关键属性。这些密钥属性提供了我们以前见过的相同的命名结构:两个传播的密钥属性SystemCreationClassName和SystemName,加上两个本机密钥属性CreationClassName和Name。
Unlike the other classes in this model, BufferPool is not derived from Service. Consequently, it does not inherit its key properties from Service. Instead, it inherits one of its key properties, CollectionID, from its superclass Collection, and adds its other key property, CreationClassName, in its own definition.
与此模型中的其他类不同,缓冲池不是从服务派生的。因此,它不会从服务继承其密钥属性。相反,它从其超类集合继承其一个键属性CollectionID,并在自己的定义中添加另一个键属性CreationClassName。
CollectionID is a string property with a maximum length of 256 characters. It identifies the buffer pool. Note that this property is defined in the BufferPool class's superclass, CollectionOfMSEs, but not as a key property. It is overridden in BufferPool, to make it part of this class's composite key.
CollectionID是一个字符串属性,最大长度为256个字符。它标识缓冲池。请注意,此属性是在BufferPool类的超类CollectionOfMess中定义的,但不是作为键属性定义的。它在BufferPool中被重写,以使其成为此类复合键的一部分。
This property is a string property of with a maximum length of 256 characters. It is set to "CIM_BufferPool" if this class is directly instantiated, or to the class name of the BufferPool subclass that is created.
此属性是的字符串属性,最大长度为256个字符。如果直接实例化该类,则将其设置为“CIM_BufferPool”,或设置为创建的BufferPool子类的类名。
This class has not yet been incorporated into the CIM model, so it does not have any CIM naming properties yet. If the normal pattern is followed, however, instances will be named with two properties CreationClassName and Name.
此类尚未合并到CIM模型中,因此它还没有任何CIM命名属性。但是,如果遵循普通模式,实例将使用两个属性CreationClassName和Name命名。
Bob Moore P. O. Box 12195, BRQA/B501/G206 3039 Cornwallis Rd. Research Triangle Park, NC 27709-2195
北卡罗来纳州三角研究公园康沃利斯路3039号BRQA/B501/G206 12195号Bob Moore邮政信箱,邮编27709-2195
Phone: (919) 254-4436 EMail: remoore@us.ibm.com
电话:(919)254-4436电子邮件:remoore@us.ibm.com
David Durham Intel 2111 NE 25th Avenue Hillsboro, OR 97124
大卫·达勒姆英特尔2111东北希尔斯伯勒25大道,或97124
Phone: (503) 264-6232 EMail: david.durham@intel.com
电话:(503)264-6232电子邮件:大卫。durham@intel.com
John Strassner INTELLIDEN, Inc. 90 South Cascade Avenue Colorado Springs, CO 80903
约翰·斯特拉斯纳·INTELLIDEN,Inc.科罗拉多州斯普林斯市南喀斯喀特大道90号,邮编80903
Phone: (719) 785-0648 EMail: john.strassner@intelliden.com
电话:(719)785-0648电子邮件:约翰。strassner@intelliden.com
Andrea Westerinen Cisco Systems, Bldg 20 725 Alder Drive Milpitas, CA 95035
加利福尼亚州米尔皮塔斯奥尔德大道20 725号楼思科系统公司安德里亚·韦斯特林,邮编95035
EMail: andreaw@cisco.com
EMail: andreaw@cisco.com
Walter Weiss Ellacoya Networks 7 Henry Clay Dr. Merrimack, NH 03054
Walter Weiss Ellacoya Networks 7 Henry Clay Merrimack博士,NH 03054
Phone: (603) 879-7364 EMail: walterweiss@attbi.com
电话:(603)879-7364电子邮件:walterweiss@attbi.com
Copyright (C) The Internet Society (2004). All Rights Reserved.
版权所有(C)互联网协会(2004年)。版权所有。
This document and translations of it may be copied and furnished to others, and derivative works that comment on or otherwise explain it or assist in its implementation may be prepared, copied, published and distributed, in whole or in part, without restriction of any kind, provided that the above copyright notice and this paragraph are included on all such copies and derivative works. However, this document itself may not be modified in any way, such as by removing the copyright notice or references to the Internet Society or other Internet organizations, except as needed for the purpose of developing Internet standards in which case the procedures for copyrights defined in the Internet Standards process must be followed, or as required to translate it into languages other than English.
本文件及其译本可复制并提供给他人,对其进行评论或解释或协助其实施的衍生作品可全部或部分编制、复制、出版和分发,不受任何限制,前提是上述版权声明和本段包含在所有此类副本和衍生作品中。但是,不得以任何方式修改本文件本身,例如删除版权通知或对互联网协会或其他互联网组织的引用,除非出于制定互联网标准的需要,在这种情况下,必须遵循互联网标准过程中定义的版权程序,或根据需要将其翻译成英语以外的其他语言。
The limited permissions granted above are perpetual and will not be revoked by the Internet Society or its successors or assignees.
上述授予的有限许可是永久性的,互联网协会或其继承人或受让人不会撤销。
This document and the information contained herein is provided on an "AS IS" basis and THE INTERNET SOCIETY AND THE INTERNET ENGINEERING TASK FORCE DISCLAIMS ALL WARRANTIES, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO ANY WARRANTY THAT THE USE OF THE INFORMATION HEREIN WILL NOT INFRINGE ANY RIGHTS OR ANY IMPLIED WARRANTIES OF MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE.
本文件和其中包含的信息是按“原样”提供的,互联网协会和互联网工程任务组否认所有明示或暗示的保证,包括但不限于任何保证,即使用本文中的信息不会侵犯任何权利,或对适销性或特定用途适用性的任何默示保证。
Acknowledgement
确认
Funding for the RFC Editor function is currently provided by the Internet Society.
RFC编辑功能的资金目前由互联网协会提供。