Issue#23 revision 1 Extra clarifications.
"Eduardo Cardona" <[email protected]>
| Newsgroups | gmane.ietf.ipcdn |
|---|---|
| Message-ID | <[email protected]> |
All,
Thanks to Dan Rice and Minnie Lu for the valuable input and suggestions
With today's discussions about objects not proposed for modifications
in issue#23
Greg and I worked a proposal for clarifying the cloneFrom object ( Copy
from the pointed row to the temporarly entry explicitely ) and the
RowStatusObject to close vage interpretations of other status value,
Attached is the updated file with issue#23
Let us know any comments
Regards
Greg, Eduardo
docsIfUpChannelStatus OBJECT-TYPE
SYNTAX RowStatus
MAX-ACCESS read-create
STATUS current
DESCRIPTION
"This object is generally intended to be used for the
creation of a temporary upstream row for the purpose of
adjusting channel parameters of a permanent upstream
channel
row.
The following restrictions apply to this object:
1) Entries with docsIfUpChannelStatus set to active(1)
are logically linked to a physical interface,
not temporarily created to clone parameters
2) A status transition from active (1) to notInService(2)
or destroy (6) is not permitted.
The Interface MIB [RFC2863] ifAdminStatus should be
used to take an Upstream Channel offline.
3) Temporary rows must be created using createAndWait(5).
4) The only possible status change of a row created using
createAndWait(5) (ie notInService(2) or notReady(3)) is
to destroy(6).
These temporary rows must never be given the Status
active(1).
A mandatory procedure for adjusting an specific row is:
1) Create a temporary row through an SNMP SET using
createAndWait(5). Use an ifIndex value outside the
operational range of the system.
2) Set the docsIfUpChannelCloneFrom field to the ifIndex
value of the active row whose parameters require
adjustment.
3) Adjust the parameter values using the new
temporary row. Ensure all parameters contain
desired values before proceeding to step 4.
4) Update the permanent row by setting object
docsIfUpChannelUpdate to TRUE. This SET will fail if
the adjusted parameters are not compatible with
each other.
5) Delete the temporary row through an SNMP SET using
DELETE.
::= { docsIfUpstreamChannelEntry 18 }
docsIfUpChannelCloneFrom OBJECT-TYPE
SYNTAX InterfaceIndexOrZero
MAX-ACCESS read-create
STATUS current
DESCRIPTION
"Intended for use when a temporary upstream table row is
created
for the purpose of manipulating parameters for a permanent
upstream channel. Refer to the descriptions of
docsIfUpChannelStatus and docsIfUpChannelUpdate for details
of
this procedure.
This object contains the ifIndex value of the
permanent upstream row whose parameters are to be adjusted.
Upon
setting this object, the values of
docsIfUpChannelFrequency,
docsIfUpChannelWidth, docsIfUpChannelModulationProfile,
docsIfUpChannelSlotSize,
docsIfUpChannelRangingBackoffStart,
docsIfUpChannelRangingBackoffEnd,
docsIfUpChannelTxBackoffStart,
docsIfUpChannelTxBackoffEnd,
docsIfUpChannelScdmaActiveCodes,
docsIfUpChannelScdmaCodesPerSlot,
docsIfUpChannelScdmaFrameSize,
docsIfUpChannelScdmaHoppingSeed, docsIfUpChannelType, and
docsIfUpChannelPreEqEnable for this row are populated with
the
corresponding values from the row referenced by this
object.
Seting this object to a non-existent or temporary upstream
will
return the error 'wrongValue'.
This object must contain a value of zero for permanent
upstream rows."
::= { docsIfUpstreamChannelEntry 16 }
issue#23-rev1.txt
(text/plain, 10.6 KB)
+ Issue #23 (revision 1)
Status: Open
(23) Change the syntax of newly added RFIv2 MIB object
docsIfUpChannelType as read-only.
The purpose of the change is to clarify, simplify and
normalize the configuration of modulation profiles when
assigning them to upstream channels.
Clarify other interdependencies between US channel and
Modulation Profile tables as currently present in up today
OSS2-0-03092
Contributors - Minnie Lu Cisco, David White Arris, Jim Fletcher ADC
Greg White CableLabs, Eduardo Cardona CableLabs
# category: "must fix"
# Action Item: New item presented, to the IPCDN group for considerations
# chair will make a decision.
Issue Details
Setting a modulation profile for an US channel involves:
1 Define a Modulation profile in docsIfCmtsModulationTable
2 Assign the modulation profile and other parameters to the US interface
(ifIndex) in docsIfUpstreamChannelTable by setting
docsIfUpChannelModulationProfile to the value of docsIfCmtsModIndex of the
desired profile
The current problem results from an ambiguity in the mib relating to some
interdependencies between the two tables. In particular, both tables currently
have ChannelType objects (docsIfUpChannelType and docsIfCmtsModChannelType).
Based on the current MIB, there is a strong likelihood that the two objects
could conflict, and CMTS vendors would need to develop mechanisms to resolve
the conflicts.
This proposal changes docsIfUpChannelType to read-only, the value reported
is taken from the docsIfCmtsModChannelType object of the currently selected
modulation profile.
This change will apply to all docsIfUpChannelType entries e.g. physical
existing ones (e.g. docsIfUpChannelStatus = 'active' ) and cloned entries
(e.g. docsIfUpChannelStatus = 'createAndWait'-> 'notInService').
As written in OSS2-O-03092, an extra restriction is needed:
In order for a modulation profile to be considered valid, all IUCs in the
modulation profile MUST have the same docsIfCmtsModChannelType. The validation
is to be performed whenever a profile is assigned to an upstream channel.
Additionally, the values of docsIfCmtsModChannelType for a profile MUST NOT be
changed while the profile is assigned to one or more upstream channels.
Not directly related to this issue, but also from OSS2-O-03092: A modulation
profile MUST NOT be destroyed if it assigned to one or more active channels.
Revision 1
Clarify the object description of mib objects:
docsIfUpChannelRowStatus and docsIfUpChannelCloneFrom
source comment are in IPCDN logs:
[ipcdn] RE: Channel Types in RFMIBv2 (was RE: DOCSIS 2.0 : rules for assigning modulation profiles to upstream channels)"
Proposed new descriptions for current MIB objects:
docsIfCmtsModulationEntry OBJECT-TYPE
SYNTAX DocsIfCmtsModulationEntry
MAX-ACCESS not-accessible
STATUS current
DESCRIPTION
"Describes a modulation profile for an Interval Usage Code
for one or more upstream channels.
Entries in this table are created by the operator. Initial
default entries may be created at system initialization
time. No individual objects have to be specified in order
to create an entry in this table.
Note that some objects do not have DEFVALs, but do have
calculated defaults and need not be specified during row
creation.
There is no restriction on the changing of values in this
table while their associated rows are active with the
exception of:
1. If a modulation profile is in use by one or more upstream
channels, the value of docsIfCmtsModChannelType MUST NOT
be changed
2. If a modulation profile is in use by one or more upstream
channels, it docsIfCmtsModControl MUST NOT be set to
'destroy' or 'notInService'."
INDEX { docsIfCmtsModIndex, docsIfCmtsModIntervalUsageCode}
::= { docsIfCmtsModulationTable 1 }
docsIfUpChannelModulationProfile OBJECT-TYPE
SYNTAX Unsigned32
MAX-ACCESS read-create
STATUS current
DESCRIPTION
"An entry identical to the docsIfModIndex in the
docsIfCmtsModulationTable that describes this channel.
This channel is further instantiated there by a grouping
of interval usage codes (IUCs) which together fully describe
the channel modulation. This object returns 0 if the
docsIfCmtsModulationTable entry does not exist or
docsIfCmtsModulationTable is empty. See
the associated conformance object for write conditions
and limitations.
Setting this object MUST return an error if the following
conditions are not satisfied:
1. All the IUC entries in the selected modulation profile
MUST have the same value of docsIfCmtsModChannelType.
2. All of the modulation parameters in the selected
modulation profile MUST be consistent with the other
parameters in this docsIfUpChannelEntry.
REFERENCE
"Data-Over-Cable Service Interface Specifications: Radio
Frequency Interface Specification SP-RFIv2.0-I04-030730,
Table 8-19."
::= { docsIfUpstreamChannelEntry 4 }
docsIfUpChannelType OBJECT-TYPE
SYNTAX DocsisUpstreamType
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"Reflects the Upstream channel type.
This object returns the value of docsIfCmtsModChannelType
for the Modulation Profile selected in
docsIfUpChannelModulationProfile for this row."
REFERENCE
"Data-Over-Cable Service Interface Specifications: Radio
Frequency Interface Specification SP-RFIv2.0-I04-030730,
Section 6.2.1."
::= { docsIfUpstreamChannelEntry 15 }
docsIfCmtsModChannelType OBJECT-TYPE
SYNTAX DocsisUpstreamType
MAX-ACCESS read-create
STATUS current
DESCRIPTION
"Describes the modulation channel type for this modulation
entry.
In order to be considered a valid modulation profile for
assignment to an upstream channel, all entries (IUCs) in
the modulation profile must have the same channel type."
REFERENCE
"Data-Over-Cable Service Interface Specifications: Radio
Frequency Interface Specification SP-RFIv2.0-I04-030730,
Table 8-19."
DEFVAL { tdma }
::= { docsIfCmtsModulationEntry 21 }
revision 1 Adds
docsIfUpChannelStatus OBJECT-TYPE
SYNTAX RowStatus
MAX-ACCESS read-create
STATUS current
DESCRIPTION
"This object is generally intended to be used for the
creation of a temporary upstream row for the purpose of
adjusting channel parameters of a permanent upstream channel
row.
The following restrictions apply to this object:
1) Entries with docsIfUpChannelStatus set to active(1)
are logically linked to a physical interface,
not temporarily created to clone parameters
2) A status transition from active (1) to notInService(2)
or destroy (6) is not permitted.
The Interface MIB [RFC2863] ifAdminStatus should be
used to take an Upstream Channel offline.
3) Temporary rows must be created using createAndWait(5).
4) The only possible status change of a row created using
createAndWait(5) (ie notInService(2) or notReady(3)) is
to destroy(6).
These temporary rows must never be given the Status
active(1).
A mandatory procedure for adjusting an specific row is:
1) Create a temporary row through an SNMP SET using
createAndWait(5). Use an ifIndex value outside the
operational range of the system.
2) Set the docsIfUpChannelCloneFrom field to the ifIndex
value of the active row whose parameters require
adjustment.
3) Adjust the parameter values using the new
temporary row. Ensure all parameters contain
desired values before proceeding to step 4.
4) Update the permanent row by setting object
docsIfUpChannelUpdate to TRUE. This SET will fail if
the adjusted parameters are not compatible with
each other.
5) Delete the temporary row through an SNMP SET using
DELETE.
::= { docsIfUpstreamChannelEntry 18 }
docsIfUpChannelCloneFrom OBJECT-TYPE
SYNTAX InterfaceIndexOrZero
MAX-ACCESS read-create
STATUS current
DESCRIPTION
"Intended for use when a temporary upstream table row is created
for the purpose of manipulating parameters for a permanent
upstream channel. Refer to the descriptions of
docsIfUpChannelStatus and docsIfUpChannelUpdate for details of
this procedure.
This object contains the ifIndex value of the
permanent upstream row whose parameters are to be adjusted. Upon
setting this object, the values of docsIfUpChannelFrequency,
docsIfUpChannelWidth, docsIfUpChannelModulationProfile,
docsIfUpChannelSlotSize, docsIfUpChannelRangingBackoffStart,
docsIfUpChannelRangingBackoffEnd, docsIfUpChannelTxBackoffStart,
docsIfUpChannelTxBackoffEnd, docsIfUpChannelScdmaActiveCodes,
docsIfUpChannelScdmaCodesPerSlot, docsIfUpChannelScdmaFrameSize,
docsIfUpChannelScdmaHoppingSeed, docsIfUpChannelType, and
docsIfUpChannelPreEqEnable for this row are populated with the
corresponding values from the row referenced by this object.
Seting this object to a non-existent or temporary upstream will
return the error 'wrongValue'.
This object must contain a value of zero for permanent
upstream rows."
::= { docsIfUpstreamChannelEntry 16 }