RFC 3670 - Information Model for Describing Network Device Q(6)

时间:2006-10-22 来源: 作者: 点击:
processofmarkingthetypeofservice (ToS)fieldintheIPv4packetheader withaspecifiedvalue.Packetsare markedinordertocontrolthe conditioningthattheywillsubsequently receive. DERIVEDFROMMarkerService TYPECo
  
                          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

4.3.14.1.  The Property ToSValue

   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.

4.3.15.  The Class DSCPMarkerService

   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.

   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

4.3.15.1.  The Property 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.

4.3.16.  The Class 8021QMarkerService

   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.

   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

4.3.16.1.  The Property PriorityValue

   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.

4.3.17.  The Class DropperService

   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].

   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.

   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.

   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

   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").

4.3.17.1.  The Property DropperType

   This is an enumerated 16-bit unsigned integer that defines the type
   of dropper.  Values include:

      1 - Other
      2 - Random
      3 - HeadTail
      4 - Absolute Dropper

   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).

4.3.17.2.  The Property OtherDropperType

   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.

4.3.17.3.  The Property DropFrom

   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:

      o  unknown(0)
      o  head(1)
      o  tail(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.

4.3.18.  The Class HeadTailDropperService

   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.

   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.

   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

4.3.18.1.  The Property QueueThreshold

   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.

4.3.19.  The Class REDDropperService

   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.

   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.

   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

   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.

4.3.19.1.  The Property MinQueueThreshold

   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.

4.3.19.2.  The Property MaxQueueThreshold

   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.

4.3.19.3.  The Property ThresholdUnits

   This is an unsigned 16-bit integer enumeration that identifies the
   units for the MinQueueThreshold and MaxQueueThreshold properties.
   Defined enumeration values are:

      o    bytes(1)
      o    packets(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).

4.3.19.4.  The Property StartProbability

   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.

   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.

4.3.19.5.  The Property StopProbability

   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.

   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.

4.3.20.  The Class QueuingService

   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.

   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.

   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

4.3.20.1.  The Property CurrentQueueDepth

   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.

4.3.20.2.  The Property DepthUnits

   This is an unsigned 16-bit integer enumeration that identifies the
   units for the CurrentQueueDepth property.  Defined enumeration values
   are:

      o    bytes(1)
      o    packets(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

4.3.21.  Class PacketSchedulingService

   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 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, if any, that acts on traffic after it has
   been processed by the scheduler.

   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

4.3.21.1.  The Property SchedulerType

   This property is an enumerated 16-bit unsigned integer, and defines
   the type of scheduler.  Values are:

      1 - Other
      2 - FIFO
      3 - Priority
      4 - Allocation
      5 - Bounded Priority
      6 - Weighted Round Robin Packet

   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).

4.3.21.2.  The Property OtherSchedulerType

   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.

4.3.22.  The Class NonWorkConservingSchedulingService

   This class does not add any properties beyond those it inherits from
   its superclass, PacketSchedulingService.  It does, however,
   participate in one additional association, 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)

4.3.23.  The Class QoSService

   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.

   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.

   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.

   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.

   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)

4.3.24.  The Class DiffServService

   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.

   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.

   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

4.3.24.1.  The Property 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.

4.3.25.  The Class AFService

   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]).

   [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.

   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).

   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).

   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
------分隔线----------------------------
顶一下
(0)
0%
踩一下
(0)
0%
------分隔线----------------------------
最新评论 查看所有评论
发表评论 查看所有评论
请自觉遵守互联网相关的政策法规,严禁发布色情、暴力、反动的言论。
评价:
表情:
用户名: 密码: 验证码:
推荐内容