Request for Comments: 4323 W. Murwin
Category: Standards Track Motorola BCS
January 2006
Data Over Cable System Interface Specification
Quality of Service
Management Information Base (DOCSIS-QoS MIB)
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.
Copyright Notice
Copyright (C) The Internet Society (2006).
Abstract
This document defines a basic set of managed objects for SNMP-based
management of extended QoS features of Cable Modems (CMs) and Cable
Modem Termination Systems (CMTSs) conforming to the Data over Cable
System (DOCSIS) specifications versions 1.1 and 2.0.
Table of Contents
1. Introduction ....................................................2
1.1. The Internet-Standard Management Framework .................2
1.2. Glossary ...................................................3
2. Overview ........................................................5
2.1. Textual Conventions ........................................5
2.2. MIB Organization ...........................................5
2.2.1. docsIetfQosPktClassTable ............................9
2.2.2. docsIetfQosParamSetTable ...........................10
2.2.2.1. Interoperation with DOCSIS 1.0 ............11
2.2.3. docsIetfQosServiceFlowTable ........................12
2.2.4. docsIetfQosServiceFlowStatsTable ...................13
2.2.5. docsIetfQosUpstreamStatsTable ......................14
2.2.6. docsIetfQosDynamicServiceStatsTable ................14
2.2.7. docsIetfQosServiceFlowLogTable .....................14
2.2.8. docsIetfQosServiceClassTable .......................15
2.2.9. docsIetfQosServiceClassPolicyTable .................15
2.2.10. docsIetfQosPHSTable ...............................16
2.2.11. docsIetfQosCmtsMacToSrvFlowTable ..................16
3. Externally Administered Classification .........................16
4. DOCSIS and IPv4 Type-of-Service (ToS) Field ....................19
5. Definitions ....................................................20
6. Security Considerations ........................................84
7. IANA Considerations ............................................86
8. Acknowledgements ...............................................86
9. Normative References ...........................................86
10. Informative References ........................................87
1. Introduction
This memo is a product of the IP over Cable Data Network (IPCDN)
working group within the Internet Engineering Task Force (IETF).
1.1. The Internet-Standard Management Framework
For a detailed overview of the documents that describe the current
Internet-Standard Management Framework, please refer to section 7 of
RFC 3410 [15].
Managed objects are accessed via a virtual information store, termed
the Management Information Base or MIB. MIB objects are generally
accessed through the Simple Network Management Protocol (SNMP).
Objects in the MIB are defined using the mechanisms defined in the
Structure of Management Information (SMI). This memo specifies a MIB
module that is compliant to the SMIv2, which is described in STD 58,
RFC 2578 [1], STD 58, RFC 2579 [2] and STD 58, RFC 2580 [3].
1.2. Glossary
Active QPS Active QoS Parameter Set (QPS). The set of QoS
parameters that describe the current level of service
provided to a Service Flow (SF).
Active SF Active Service Flow. An SF with a non-empty Active
QPS.
Admitted QPS Admitted QoS Parameter Set. The set of QoS
parameters that describe a level of service that the
Service Flow is not currently using, but that it is
guaranteed to receive upon the SF’s request to make
the set Active.
Admitted SF A Service Flow with a non-empty Admitted QPS.
CATV Cable Television.
CM Cable Modem. A modem connecting a subscriber’s LAN
to the Cable Television (CATV) Radio Frequency (RF)
network. DOCSIS CMs operate as a MAC layer bridge
between the home LAN and the Cable Television (CATV)
Radio Frequency (RF) network.
CMTS Cable Modem Termination System. The "head-end"
device providing connectivity between the RF network
and the Internet.
Downstream The direction from the head-end towards the
subscriber.
DSA Dynamic Service Addition. A DOCSIS MAC management
message requesting the dynamic creation of a new
Service Flow. New SFs are created with a three-
message exchange of a DSA-REQ, DSA-RSP, and DSA-ACK.
DSC Dynamic Service Change. A DOCSIS MAC management
message requesting a change to the attributes of a
Service Flow. SFs are changed with a three-message
exchange of a DSC-REQ, DSC-RSP, and DSC-ACK.
DSD Dynamic Service Delete. A DOCSIS MAC management
message requesting the deletion of a Service Flow.
SFs are deleted with a two-message exchange of a
DSD-REQ and DSD-ACK.
Head-end The origination point in most cable systems of the
subscriber video signals. It is generally also the
location of the CMTS.
PHS Payload Header Suppression. A feature of DOCSIS 1.1
and 2.0 in which header bytes that are common in a
sequence of packets of a Service Flow are replaced by
a one-byte PHSI Index (PHSI) when transmitting the
packet on the RF network.
primary SF Primary Service Flow. All CMs have a Primary
Upstream Service Flow and a Primary Downstream
Service Flow. They provide a default path for
forwarded packets that are not classified to any
other Service Flow.
Provisioned QPS A QoS Parameter Set describing an envelope of service
within which a Service Flow is authorized to request
admission. All existing Service Flows must have a
non-empty Provisioned QPS; thus, all SFs are
considered to be "Provisioned".
RF Radio Frequency. In particular, this abbreviation
refers to the radio frequencies for Cable Television
(CATV).
SCN Service Class Name. A named set of QoS parameters.
A Service Flow may or may not be associated with a
single named Service Class. A Service Class has as
an attribute a QoS Parameter Set that is used as the
default set of values for all Service Flows belonging
to the Service Class.
SID Service ID. A 16-bit unsigned integer assigned by
the CMTS for an Upstream Service Flow with a non-
empty Active QoS Parameter Set.
SF Service Flow. A unidirectional stream of packets
between the CM and CMTS. SFs are characterized as
upstream or downstream. The SF is the fundamental
unit of service provided on a DOCSIS CATV network.
SFID Service Flow ID. A 32-bit unsigned integer assigned
by the CMTS to each Service Flow.
Upstream The direction from a subscriber CM to the head-end
CMTS.
2. Overview
This MIB module provides a set of objects required for the management
of DOCSIS 1.1 and 2.0 compliant Cable Modems (CM) and Cable Modem
Termination Systems (CMTS). The specification is derived from the
DOCSIS 2.0 Radio Frequency Interface specification [4]. Please note
that the referenced DOCSIS specifications only requires Cable Modems
to process IPv4 customer traffic. Design choices in this MIB module
reflect those requirements. Future versions of the DOCSIS standard
are expected to require support for IPv6 as well.
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 RFC 2119 [5].
2.1. Textual Conventions
The textual convention "DocsIetfQosRfMacIfDirection" is defined to
indicate the direction of a packet classifier relative to an
interface. It takes the values of either downstream(1) or
upstream(2).
The textual convention "DocsIetfQosBitRate" corresponds to the bits
per second as defined for QoS Parameter Sets in DOCSIS 1.1 and 2.0.
This definition includes all bits of the Ethernet MAC frame as
transmitted on the RF network, starting with the Destination Address
and ending with the Ethernet Frame Check Sequence (FCS). It does NOT
includes bits in the DOCSIS MAC header.
2.2. MIB Organization
The structure of the IPCDN QoS MIB module (DOCS-IETF-QOS-MIB) is
summarized below:
docsIetfQosMIB
docsIetfQosMIBObjects
docsIetfQosPktClassTable
docsIetfQosPktClassEntry
docsIetfQosPktClassId
docsIetfQosPktClassDirection
docsIetfQosPktClassPriority
docsIetfQosPktClassIpTosLow
docsIetfQosPktClassIpTosHigh
docsIetfQosPktClassIpTosMask
docsIetfQosPktClassIpProtocol
docsIetfQosPktClassInetAddressType
docsIetfQosPktClassInetSourceAddr
docsIetfQosPktClassInetSourceMask
docsIetfQosPktClassInetDestAddr
docsIetfQosPktClassInetDestMask
docsIetfQosPktClassSourcePortStart
docsIetfQosPktClassSourcePortEnd
docsIetfQosPktClassDestPortStart
docsIetfQosPktClassDestPortEnd
docsIetfQosPktClassDestMacAddr
docsIetfQosPktClassDestMacMask
docsIetfQosPktClassSourceMacAddr
docsIetfQosPktClassEnetProtocolType
docsIetfQosPktClassEnetProtocol
docsIetfQosPktClassUserPriLow
docsIetfQosPktClassUserPriHigh
docsIetfQosPktClassVlanId
docsIetfQosPktClassStateActive
docsIetfQosPktClassPkts
docsIetfQosPktClassBitMap
docsIetfQosParamSetTable
docsIetfQosParamSetEntry
docsIetfQosParamSetServiceClassName
docsIetfQosParamSetPriority
docsIetfQosParamSetMaxTrafficRate
docsIetfQosParamSetMaxTrafficBurst
docsIetfQosParamSetMinReservedRate
docsIetfQosParamSetMinReservedPkt
docsIetfQosParamSetActiveTimeout
docsIetfQosParamSetAdmittedTimeout
docsIetfQosParamSetMaxConcatBurst
docsIetfQosParamSetSchedulingType
docsIetfQosParamSetNomPollInterval
docsIetfQosParamSetTolPollJitter
docsIetfQosParamSetUnsolicitGrantSize
docsIetfQosParamSetNomGrantInterval
docsIetfQosParamSetTolGrantJitter
docsIetfQosParamSetGrantsPerInterval
docsIetfQosParamSetTosAndMask
docsIetfQosParamSetTosOrMask
docsIetfQosParamSetMaxLatency
docsIetfQosParamSetType
docsIetfQosParamSetRequestPolicyOct
docsIetfQosParamSetBitMap
docsIetfQosServiceFlowTable
docsIetfQosServiceFlowEntry
docsIetfQosServiceFlowId
docsIetfQosServiceFlowSID
docsIetfQosServiceFlowDirection
docsIetfQosServiceFlowPrimary
docsIetfQosServiceFlowStatsTable
docsIetfQosServiceFlowStatsEntry
docsIetfQosServiceFlowPkts
docsIetfQosServiceFlowOctets
docsIetfQosServiceFlowTimeCreated
docsIetfQosServiceFlowTimeActive
docsIetfQosServiceFlowPHSUnknowns
docsIetfQosServiceFlowPolicedDropPkts
docsIetfQosServiceFlowPolicedDelayPkts
docsIetfQosUpstreamStatsTable
docsIetfQosUpstreamStatsEntry
docsIetfQosSID
docsIetfQosUpstreamFragments
docsIetfQosUpstreamFragDiscards
docsIetfQosUpstreamConcatBursts
docsIetfQosDynamicServiceStatsTable
docsIetfQosDynamicServiceStatsEntry
docsIetfQosIfDirection
docsIetfQosDSAReqs
docsIetfQosDSARsps
docsIetfQosDSAAcks
docsIetfQosDSCReqs
docsIetfQosDSCRsps
docsIetfQosDSCAcks
docsIetfQosDSDReqs
docsIetfQosDSDRsps
docsIetfQosDynamicAdds
docsIetfQosDynamicAddFails
docsIetfQosDynamicChanges
docsIetfQosDynamicChangeFails
docsIetfQosDynamicDeletes
docsIetfQosDynamicDeleteFails
docsIetfQosDCCReqs
docsIetfQosDCCRsps
docsIetfQosDCCAcks
docsIetfQosDCCs
docsIetfQosDCCFails
docsIetfQosServiceFlowLogTable
docsIetfQosServiceFlowLogEntry
docsIetfQosServiceFlowLogIndex
docsIetfQosServiceFlowLogIfIndex
docsIetfQosServiceFlowLogSFID
docsIetfQosServiceFlowLogCmMac
docsIetfQosServiceFlowLogPkts
docsIetfQosServiceFlowLogOctets
docsIetfQosServiceFlowLogTimeDeleted
docsIetfQosServiceFlowLogTimeCreated
docsIetfQosServiceFlowLogTimeActive
docsIetfQosServiceFlowLogDirection
docsIetfQosServiceFlowLogPrimary
docsIetfQosServiceFlowLogServiceClassName
docsIetfQosServiceFlowLogPolicedDropPkts
docsIetfQosServiceFlowLogPolicedDelayPkts
docsIetfQosServiceFlowLogControl
docsIetfQosServiceClassTable
docsIetfQosServiceClassEntry
docsIetfQosServiceClassName
docsIetfQosServiceClassStatus
docsIetfQosServiceClassMaxTrafficRate
docsIetfQosServiceClassMaxTrafficBurst
docsIetfQosServiceClassMinReservedRate
docsIetfQosServiceClassMinReservedPkt
docsIetfQosServiceClassMaxConcatBurst
docsIetfQosServiceClassNomPollInterval
docsIetfQosServiceClassTolPollJitter
docsIetfQosServiceClassUnsolicitGrantSize
docsIetfQosServiceClassNomGrantInterval
docsIetfQosServiceClassTolGrantJitter
docsIetfQosServiceClassGrantsPerInterval
docsIetfQosServiceClassMaxLatency
docsIetfQosServiceClassActiveTimeout
docsIetfQosServiceClassAdmittedTimeout
docsIetfQosServiceClassSchedulingType
docsIetfQosServiceClassRequestPolicy
docsIetfQosServiceClassTosAndMask
docsIetfQosServiceClassTosOrMask
docsIetfQosServiceClassDirection
docsIetfQosServiceClassStorageType
docsIetfQosServiceClassDSCPOverwrite
docsIetfQosServiceClassPolicyTable
docsIetfQosServiceClassPolicyEntry
docsIetfQosServiceClassPolicyIndex
docsIetfQosServiceClassPolicyName
docsIetfQosServiceClassPolicyRulePriority
docsIetfQosServiceClassPolicyStatus
docsIetfQosServiceClassPolicyStorageType
docsIetfQosPHSTable
docsIetfQosPHSEntry
docsIetfQosPHSField
docsIetfQosPHSMask
docsIetfQosPHSSize
docsIetfQosPHSVerify
docsIetfQosPHSIndex
docsIetfQosCmtsMacToSrvFlowTable
docsIetfQosCmtsMacToSrvFlowEntry
docsIetfQosCmtsCmMac
docsIetfQosCmtsServiceFlowId
docsIetfQosCmtsIfIndex
This MIB module is organized as 11 tables. Most tables are
implemented in both the CM and CMTS; the
docsIetfQosUpstreamStatsTable and docsIetfQosServiceFlowLogTable are
implemented on the CMTS only.
2.2.1. docsIetfQosPktClassTable
The docsIetfQosPktClassTable reports the Service Flow Classifiers
implemented by the managed device. The table is indexed by the tuple
{ ifIndex, docsIetfQosServiceFlowId, docsIetfQosPktClassId }. The
ifIndex corresponds to a CATV MAC interface. Each CATV MAC interface
has a set of Service Flows identified with a docsIetfQosServiceFlowId
value that is unique for that interface. Each Service Flow may have
a number of packet classifiers that map packets to the flow. The
ClassifierId for the classifier is unique only within a particular
Service Flow.
The semantics of packet classification are provided in [4]. Briefly,
the DOCSIS MAC interface calls for matching packets based on values
within the 802.2 (LLC), 802.3, IP, and/or UDP/TCP headers. Packets
that map more than one classifier are prioritized according to their
docsIetfQosPktClassPriority values. The docsIetfQosServiceFlowId (an
index object) indicates to which Service Flow the packet is
classified.
The docsIetfQosPktClassTable is distinct from the
docsDevIpFilterTable of [6] in that docsIetfQosPktClassTable is
intended only to reflect the state of the Service Flow Classifiers.
Service Flow Classifiers may be created only via a CM configuration
file or from the Dynamic Service Addition (DSA) messages. For this
reason, docsIetfQosPktClassTable is read-only.
The docsDevIpFilterTable is intended for external policy-based
administration of packet classifiers. See the section "Externally
Administered Classification", below.
2.2.2. docsIetfQosParamSetTable
The docsIetfQosParamSetTable reports the values of QoS Parameter Set
as defined in Section C.2.2 of [4].
In general, a Service Flow is associated with three different QoS
Parameter Sets (QPSs): an "active" QPS, an "admitted" QPS, and a
"provisioned" or "authorized" QPS. The relationship of these three
sets is represented below:
+---------------------+
| Provisioned |
| |
| +---------------+ |
| | Admitted | |
| | | |
| | +---------+ | |
| | | Active | | |
| | | | | |
| | +---------+ | |
| | | |
| +---------------+ |
| |
+---------------------+
Figure 1: QoS Parameter Sets
The Provisioned QPS describes the maximum service envelope for which
the SF is authorized. The Admitted QPS is the set of services for
which a Service Flow has requested admission to the DOCSIS RF