The MPLS WG Archive[Date Prev][Date Next][Thread Prev][Thread Next] [Date Index][Thread Index][Author Index][Subject Index] WG last call on the FTN mib module and the TE mib module
As promised, here is the continuation of my
review of this draft.
This concludes my comments. I'm afraid I don't
have the stamina to
work on the conformance statement.
Adrian
=========
24) mplsTunnelResourcePointer
Description
This refers to "segment" twice. But we are not
dealing
in segments in this MIB table. We are dealing in
tunnel instances (or if you must,
LSPs).
25) mplsTunnelPrimaryInstance
It is very unclear what you mean in this case by
"primary". I think the description needs to be
enhanced.
For example, do you mean the tunnel instance that
is
actually established and active at the moment?
No, it
can't be that because in
mplsTunnelInstancePriority
allows two instances to be active at
once.
Does it mean "preferred"? Wouldn't that be
covered
by the instance with the highest
priority?
Perhaps it means the instance that carries the
full
configuration? No this is the definition of the
row
with tunnel instance zero.
26) mplsTunnelTable
Given that I have a tunnel with many instances
defined,
how do I find which instance(s) are currently
active?
Do I have to read each of them and collect the
ones
with operStatus up?
27) mplsTunnelInstancePriority
"This
value indicates which priority, in
descending
order, with 0 indicating the lowest priority, within a group of tunnel instances. A group of < tunnel instances is defined as a set of tunnels > tunnel instances is defined as a set of LSPs with the same mplsTunnelIndex in this table, but < with a different mplsTunnelInstance. Tunnel group > with a different mplsTunnelInstance. Tunnel instance priorities are used to denote the priority at which 28) mplsTunnelRole (out of order, sorry)
SYNTAX INTEGER { head(1), transit(2),
tail(3) }
I believe you need BITS not INTEGER since a
tunnel may
be set up between interfaces on a single LSR
making it
both ingress and egress. You could alternatively
add:
head_tail(4)
but I think that is less useful.
29) mplsTunnelExcludeAllAfinity
As Ed says, this should read "Any". Also in the
description.
30) mplsTunnelPrimaryUpTime
This description is inadequate.
What is meant be "active"?
See point 25) for questions about what a primary
instance is.
Is this value present in the row for every
instance that is
not a primary instance? If so, why?
31) mplsTunnelPathChanges
<
"Specifies the number of times the paths has changed
> "Specifies the number of times the path has changed for this tunnel since its creation." 32) mplsTunnelPathChanges and
mplsTunnelLastPathChange
Do you mean "for this tunnel instance" or are you
trying
to capture the case where a tunnel has changed
path by
any means including a change of
instance?
What do you mean by "path change"? Hop, CHop or
ARHop?
33) mplsTunnelCreationTime
Please be more specific. What does "came into
existence" mean?
34) mplsTunnelStateTransisitions
Please say which "state" you are refering
to.
35) mplsTunnelOperStatus (and probably all
operStatus objects)
At the MIB Meeting (TM) we took an action that
"unknown"
would always have value (1) unless there was good reason in
which case it must be stated in the MIB
modules.
36)
mplsTunnelRowStatus
"This
variable is used to create, modify,
and/or
< delete a row in this tabole. When a row in this > delete a row in this table. 37)
mplsTunnelRowStatus
When a row
in this
table is in active(1) state, no objects in that row can be modified except mplsTunnelRowStatus and mplsTunnelStorageType." Can be modified by whom/what? Presumably a
dynamic signaling
protocol could modifiy this table regardless of
the rowStatus.
Can a user not change the adminStatus when
rowStatus is
active?
38) mplsTunnelStorageType (and all similar
fields).
The text here is confusing.
"This
variable indicates the storage type for
this
object. If this variable is set to readOnly(5), and the corresponding entry is removed, then the agent must remove this row shortly thereafter [RFC2579]. What is the difference between an "entry" and a
"row"?
Where you say "entry", do you mean "the managed
object
represented by this entry in the
table"?
Setting this object to permanent(4) indicates
that
this object should be restored automatically after failures. What do you mean by "this object"?
Do you mean the "managed object represented by
this entry
in the table"?
39) mplsTunnelHopListIndexNext
Shouldn't the syntax be
MplsPathIndexOrZero?
40) All IndexNext objects
I recall an email discussion with Bert about how
these
objects should
be managed and described. The concern is
with producing unnecessary lacunae in the table.
I think the position "agreed" upon was to cut
over to
using the IndexInteger
and IndexIntegerNextFree TCs
from RFC3289.
41) mplsTunnelHopTable
Please explicitly state the meaning of this table
for
LSRs that are not the ingress of the tunnel
instance.
This text should also be placed in the
description of
mplsTunnelHopTableIndex.
41) mplsTunnelHopTable
"The
mplsTunnelHopTable is used to indicate the
hops,
< strict or loose, for an MPLS tunnel defined in < mplsTunnelTable, > strict or loose, for
an instance of an MPLS tunnel
> defined
in mplsTunnelTable,
42)
mplsTunnelHopTable
when it is established
via
signalling, for the outgoing direction of the tunnel. What does this mean?
i) Why is it limited to signaling? This is
a convenient
place to record the path of a
manula tunnel instance
if it is known.
ii) Are you trying to say that the only hops
present are
the downstream hops? Thus in
RSVP-TE terms, at
transit LSRs, this matches the received ERO. If so,
please say so.
43)
mplsTunnelHopTable
The
first row in the table is the first hop after the origination point of the tunnel. In which case your example in section 9 is broken.
44) mplsTunnelHopAddressType
mplsTunnelHopAddrUnnum should be referred to.
If
the object is set to lspid(5), then all but the mplsTunnelHopLspId should be referred to. Note that lspid(5) is a valid option only for tunnels signaled via CRLDP" What do you mean by "all but the mplsTunnelHopLspId should
be referred to"?
45) mplsTunnelHopAddress
I am confused by this object and the associated textual
convention.
i) Why are 32 octets required to carry a hop address?
ii) Is there not already a standard TC for carrying IP
addresses?
iii) If you are going to use a "free-form" octet string (not my favorite) then why is it necessary to
have a separate object and TC for AS number?
46) mplsTunnelHopAddrUnnum
If this only holds the interface id, where is the
router id?
47) mplsTunnelHopType and
mplsTunnelHopInclude
I believe you should combine these since
strict/loose
has no meaning for exclusion.
This gives...
mplsTunnelHopType OBJECT-TYPE
SYNTAX INTEGER { strict(1), loose(2), exclude(3)
} MAX-ACCESS read-create STATUS current DESCRIPTION "Denotes whether this tunnel hop is routed in a strict or loose fashion, or is to be excluded from the computed
and actual paths."
::= { mplsTunnelHopEntry 10 } 48) mplsTunnelHopPathOptionName
Must this be present for every hop with the
same
mplsTunnelHopListIndex and
mplsTunnelHopPathOptionIndex?
If so, must it be identical?
49) mplsTunnelHopEntryPathComp
So many questions!
i) This is not a per hop piece of
information. This
and point 48) suggest
that you need a PathOption
table.
ii) How is this useful? It seems you are
mixing two
issues. a) the need to
control whether CSPF or
simple next-hop routing
should be invoked at the
ingress, b) whether the
user is allowed to
specify other than the
ingress and egress
addresses.
iii) Note that the user cannot specify the
ingress
since the source is not
in the hop table!
50) mplsTunnelHopRowStatus
"tabole"
51) mplsTunnelResourceTable
An old chestnut, this one...
Does this table hold the requested values or the
actual
values? In other words, what effect does
Admisssion
Control and Resv have on the objects in this
table?
What does the table betoken at non-ingress nodes?
The
values received on the setup
request?
When you say the values are copied into LSR MIB
module
objects, are you implying that the two objects
always
contain the same values?
52) mplsTunnelResourceExBurstSize,
mplsTunnelResourceFrequency
and
mplsTunnelResourceWeight
These seem to be duplicated by...
mplsTunnelCRLDPResExBurstSize,
mplsTunnelCRLDPResFrequency
and
mplsTunnelCRLDPResWeight Must I use both?
53) mplsTunnelResourceRowStatus
"tabole"
54) mplsTunnelARHopTable
Need a description of the menaing of this table at
non-ingress nodes.
The question is whether this reflects the RRO from
the Resv, or the splice of the RRO from the Path
and the Resv.
55) mplsTunnelARHopTable
"The mplsTunnelARHopTable is
used to indicate the
hops, strict or loose, for an MPLS tunnel defined How can there be a loose hop in the ARHopTable? Fortunately
you don't have an object for this.
56) mplsTunnelARHopTable
Please note that since the
information necessary to < build entries within this table are not provided by > build entries within this table is not provided by 56) mplsTunnelARHopTable
I believe it is important to add a note to point out that the
contents of this table may change while you are walking it.
This may lead to the NMS perceiving a path which appears to
include loops.
You should mention that the mplsTunnelLastPathChange object
can be used to verify that the AR read is valid.
57) mplsTunnelARHopEntry
"An entry in this table
represents a tunnel hop.
An
entry is created by a network administrator for signaled ERLSP set up by an MPLS signalling protocol." Huh? Surely it is created by the signaling protocol.
58) mplsTunnelARHopAddrUnnum (and all unnum addresses)
I just noticed the TC for this is an OctetString.
Why? What is wrong with putting 32 bit values in 32 bit
objects?
59) mplsTunnelARHopIpPrefixLen
How would this ever be other than a full prefix?
In other words, this object is redundant.
60) mplsTunnelARHopAsNumber
How do you expect this to be present in the AR?
There is no way to signal it.
61) mplsTunnelARHopTable
What about labels and local protection flags (both in
the RRO in RFC3209)? Are we defering these only to the
GMPLS MIB?
62) mplsTunnelCHopTable
"The mplsTunnelCHopTable is used
to indicate the
hops, strict or loose, for an MPLS tunnel defined in mplsTunnelTable, as computed by a constraint- based routing protocol, based on the mplsTunnelHopTable for the outgoing direction of the tunnel. Each row in this table is indexed by What do you mean by the "outgoing direction of the tunnel"?
Are you trying to say that this table only holds information
for LSRs downstream of this LSR (which would make it
behave as the mplsTunnelHopTable, so seems reasonable) please
use standard terms.
This ties to the question: what is the menaing of this table
at non-ingress LSRs? It clearly could have value everywhere
except the egress.
63) mplsTunnelCHopTable
table is optional.
Furthermore, since the
information in this table is actually provided by routing protocol after the path has been computed, the entries in this table are provided only for observation, and hence, all variables in this table are accessible exclusively as read-only." I think this could be reworded.
Furthermore,
since the information in this table
describes the path
computed by the CSPF engine
the entries in this
table are read-only."
64) mplsTunnelCHopEntry
"An entry in this table
represents a tunnel hop.
An
entry in this table is created by a constraint- based routing protocol based on the hops specified in the corresponding mplsTunnelHopTable." Hmmm. A new and wonderful use for a routing
protocol!
Reword...
"An
entry in this table represents a tunnel hop.
An
entry in this table is created by a path computation engine using CSPF
techniques applied to the
information
collected routing protocols and the
hops
specified in the corresponding mplsTunnelHopTable."
65) mplsTunnelPerfTable
< "This
table provides per-tunnel MPLS
performance
< information." > "This table provides per-tunnel instance MPLS >
performance information."
66) mplsTunnelPerfTable
Should we not also measure the signaling
protocol?
67) mplsTunnelPerfTable
What about packets dropped because of local
resource
constraints? Such packets are received
successfully and are
not packets with errors, but may be discarded
through queuing
precidence or whatever.
68) mplsTunnelCRLDPResMeanBurstSize
Isn't this a duplicate of
mplsTunnelResourceMeanBurstSize
which is not
specifc to CR-LDP?
69) mplsTunnelCRLDPResEntry
Please state rules to prevent one of these
entries being
orphaned. 70) mplsTunnelCRLDPResRowStatus and
mplsTunnelCRLDPResStorageType
Why not inherrit from
mplsTunnelResourceEntry?
71) mplsTunnelDown
mplsTunnelRowStatus is needed too since it may
explain why
operStatus has gone down even though adminStatus
is up.
72) mplsTunnelRerouted
"This
notification is generated when a tunnel
is
rerouted. If the actual path is used, then this tunnel's entry MAY contain the new path for this tunnel some time after this trap is issued by the agent." What is meant by "If the actual path is used"?
Are you
saying...
"This
notification is generated when a tunnel
is
rerouted. If the mplsTunnelARHopTable is used, then
this tunnel instance's entry in the
mplsTunnelARHopTable will contain the new path
for
this tunnel some time after this trap is
issued by the
agent."
73) mplsTunnelReoptimized
ditto
74) Section 12 First bullet
mplsTunnelARHopTable and mplsTunnelCHopTable are read-only
and so should not appear at this point.
75) Section 16
It is no longer 2001 (although it may still feel like it :-)
|
|