Be ye not alarmed... I have reviewed this document as part of the security directorate's ongoing effort to review all IETF documents being processed by the IESG. These comments were written primarily for the benefit of the security area directors. Document editors and WG chairs should treat these comments just like any other last call comments. tl;dr: Ready with nits. Summary: This draft contains a Standards Track document on encoding label and connectivity constraints on GMPLS controlled networks. It also has some wicked ASCII art.... I'm not really a GMPLS person, and so some of the constraints that this discussed hadn't really occurred to me (like some gear not being able to do wavelength conversion -- by the time I see a link its in a router :-)). Anyway, this seem like a real problem, and the solution seems reasonable. >From a security standpoint I couldn't really see much issue here -- I guess a suitably placed attacker could signal additional constraints, either forcing paths to be built past a place where he could intercept them, or adding constraints that prevent paths from being built at all. An attacker with this level of access has already won, and so I don't view this as a major issue. I *do* however have a pile o' nits, see below, in COPE (Comment, Original, Proposed, Error) format. These are all readability / grammar, no substantive changes below.... Abstract Generalized Multiprotocol Label Switching can be used to control a wide variety of technologies. In some of these technologies network [O]In some of these technologies network [P] In some of these technologies, network [C] grammar elements and links may impose additional routing constraints such as asymmetric switch connectivity, non-local label assignment, and label range limitations on links. [ SNIP ] 1.1. Node Switching Asymmetry Constraints For some network elements the ability of a signal or packet on a [O] For some network elements the ability [P] For some network elements, the ability [C] grammar/readability particular input port to reach a particular output port may be limited. In addition, in some network elements the connectivity between some input ports and output ports may be fixed, e.g., a simple multiplexer. To take into account such constraints during path computation we model this aspect of a network element via a [O] path computation we model [P] path computation, we model [C] grammar/readability connectivity matrix. The connectivity matrix (ConnectivityMatrix) represents either the potential connectivity matrix for asymmetric switches or fixed connectivity for an asymmetric device such as a multiplexer. Note that this matrix does not represent any particular internal blocking behavior but indicates which input ports and labels (e.g., wavelengths) could possibly be connected to a particular output port and label pair. Representing internal state dependent blocking for a node is beyond the scope of this document and due to it's highly implementation dependent nature would most likely not be subject to [O] and due to it's highly implementation dependent nature would most [P] and, due to its highly implementation-dependent nature, would most [C] apostrophe removed and two commas added; grammar/readability standardization in the future. The connectivity matrix is a conceptual M*m by N*n matrix where M represents the number of input ports each with m labels and N the number of output ports each with n labels. 1.2. Non-Local Label Assignment Constraints If the nature of the equipment involved in a network results in a requirement for non-local label assignment we can have constraints [O] for non-local label assignment we can have [P] for non-local label assignment, we can have [C] grammar/readability based on limits imposed by the ports themselves and those that are implied by the current label usage. Note that constraints such as these only become important when label assignment has a non-local character. For example in MPLS an LSR may have a limited range of labels available for use on an output port and a set of labels already in use on that port and hence unavailable for use. This [O] For example in MPLS an LSR may have a limited range of labels available for use on an output port and a set of labels already in use on that port and hence unavailable for use. [P] For example, in MPLS an LSR may have a limited range of labels available for use on an output port, and a set of labels already in use on that port, and hence unavailable for use. [C] grammar/readability information, however, does not need to be shared unless there is some limitation on the LSR's label swapping ability. For example if a TDM node lacks the ability to perform time-slot interchange or a WSON lacks the ability to perform wavelength conversion then the label assignment process is not local to a single node and it may be advantageous to share the label assignment constraint information for use in path computation. [O] For example if a TDM node lacks the ability to perform time-slot interchange or a WSON lacks the ability to perform wavelength conversion then the label assignment process is not local to a single node and it may be advantageous to share the label assignment constraint information for use in path computation. [P] For example, if a TDM node lacks the ability to perform time-slot interchange, or a WSON lacks the ability to perform wavelength conversion, then the label assignment process is not local to a single node. In this case, it is may be advantageous to share the label assignment constraint information for use in path computation. [C] run on sentence; broken up and punctuated for readability. Port label restrictions (PortLabelRestriction) model the label restrictions that the network element (node) and link may impose on a port. These restrictions tell us what labels may or may not be [ SNIP ] The Connectivity Matrix Field represents how input ports are connected to output ports for network elements. The switch and fixed connectivity matrices can be compactly represented in terms of a minimal list of input and output port set pairs that have mutual connectivity. As described in [Switch] such a minimal list [O] As described in [Switch] such a minimal list [P] As described in [Switch], such a minimal list [C] grammar/readability representation leads naturally to a graph representation for path computation purposes that involves the fewest additional nodes and links. [SNIP] o Link Set A dir=input, Link Set B dir=output The meaning of the pair of link sets A and B in this case is that any signal that inputs a link in set A can be potentially switched out of an output link in set B. [O] The meaning of the pair of link sets A and B in this case is that any signal that inputs a link in set A can be potentially switched out of an output link in set B. [P] In this case, the meaning of the pair of link sets A and B is that any signal that inputs a link in set A can be potentially switched out of an output link in set B. [C] readability o Link Set A dir=bidirectional, Link Set B dir=bidirectional [SNIP] The port label restriction can be encoded as follows: More than one of these fields may be needed to fully specify a complex port constraint. When more than one of these fields are present the [O] When more than one of these fields are present the [P] When more than one of these fields are present, the [C] grammar resulting restriction is the union of the restrictions expressed in each field. To indicate that a restriction applies to the port in general and not to a specific connectivity matrix use the reserved value of 0xFF for the MatrixID. [O] To indicate that a restriction applies to the port in general and not to a specific connectivity matrix use the reserved value of 0xFF for the MatrixID. [P] Use the reserved value of 0xFF for the MatrixID to indicate that a restriction applies to the port. [C] grammar/readability [BIG SNIP] 3. Security Considerations This document defines protocol-independent encodings for WSON information and does not introduce any security issues. However, other documents that make use of these encodings within protocol extensions need to consider the issues and risks associated Bernstein and Lee Expires June 29, 2015 [Page 17] Internet-Draft General Network Element Constraint Encoding December 2014 with, inspection, interception, modification, or spoofing of any of [O] with, inspection [P] with inspection [R] no comma needed -- I don't think the execution is relevant when it was obviously a bad idea in the first place. This is like putting rabid weasels in your pants, and later expressing regret at having chosen those particular rabid weasels and that pair of pants. ---maf