IS-IS for IP Internets | P. Sarkar, Ed. |
Internet-Draft | H. Gredler |
Intended status: Standards Track | S. Hegde |
Expires: September 10, 2015 | Juniper Networks, Inc. |
S. Litkowski | |
B. Decraene | |
Orange | |
Z. Li | |
Huawei Technologies | |
E. Aries | |
R. Rodriguez | |
H. Raghuveer | |
March 9, 2015 |
Advertising Per-node Admin Tags in IS-IS
draft-ietf-isis-node-admin-tag-01
This document describes an extension to IS-IS protocol [ISO10589], [RFC1195] to add an optional operational capability, that allows tagging and grouping of the nodes in an IS-IS domain. This allows simple management and easy control over route and path selection, based on local configured policies.
This document describes the protocol extensions to disseminate per-node administrative tags in IS-IS protocols.
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 [RFC2119].
This Internet-Draft is submitted in full conformance with the provisions of BCP 78 and BCP 79.
Internet-Drafts are working documents of the Internet Engineering Task Force (IETF). Note that other groups may also distribute working documents as Internet-Drafts. The list of current Internet-Drafts is at http://datatracker.ietf.org/drafts/current/.
Internet-Drafts are draft documents valid for a maximum of six months and may be updated, replaced, or obsoleted by other documents at any time. It is inappropriate to use Internet-Drafts as reference material or to cite them other than as "work in progress."
This Internet-Draft will expire on September 10, 2015.
Copyright (c) 2015 IETF Trust and the persons identified as the document authors. All rights reserved.
This document is subject to BCP 78 and the IETF Trust's Legal Provisions Relating to IETF Documents (http://trustee.ietf.org/license-info) in effect on the date of publication of this document. Please review these documents carefully, as they describe your rights and restrictions with respect to this document. Code Components extracted from this document must include Simplified BSD License text as described in Section 4.e of the Trust Legal Provisions and are provided without warranty as described in the Simplified BSD License.
This document provides mechanisms to advertise per-node administrative tags in the IS-IS Link State PDU [RFC1195]. In certain path-selection applications like for example in traffic-engineering or LFA [RFC5286] selection there is a need to tag the nodes based on their roles in the network and have policies to prefer or prune a certain group of nodes.
For the purpose of advertising per-node administrative tags within IS-IS, a new sub-TLV to the IS-IS Router Capability TLV-242 that is defined in [RFC4971] is proposed. Path selection is a functional set which applies both to TE and non-TE applications. Per-node administrative tags are used to advertise an attribute of the node. As such they are independent of the routing protocol used to advertise them. Because per-node administrative tags may be used to advertise many different attributes, associating the advertisement to TLVs specific to a particular use case (e.g. TE extensions to IS-Neighbors TLVs [RFC5305] in the case of TE path selection) is not appropriate.
An administrative Tag is a 32-bit integer value that can be used to identify a group of nodes in the IS-IS domain. The new sub-TLV specifies one or more administrative tag values. An IS-IS router advertises the set of groups it is part of in the specific IS-IS level. As an example, all PE-nodes may be configured with certain tag value, whereas all P-nodes are configured with a different tag value.
The new sub-TLV defined will be carried inside the IS-IS Router Capability TLV-242 [RFC4971]) in the Link State PDUs originated by the router. Link State PDUs [ISO10589] can be either flooded within the specific level (i.e. L1 or L2) or can be relayed across from one level to another. Per-node administrative tags included in a TLV 242 to be distributed within the specific level are perceived to have 'level-wide' scope only. On the other hand, per-node administrative tag included in a TLV 242 to be distributed across levels are perceived to have 'domain-wide' scope.
Choosing the flooding scope to be associate with group tags are defined by the needs of the operator's usage and is a matter of local policy or configuration. Operator may choose to advertise a set of per-node administrative tags across levels and another set of per-node administrative tags within the specific level. But evidently the same set of per-node administrative tags cannot be advertised both across levels and within a specific level. A receiving IS-IS router will not be able to distinguish between the significance of a per-node administrative tag advertised globally from that of an administrative tag advertised locally if they have the same value associated but different significance across different scopes.
Implementations SHOULD allow configuring one or more per-node administrative tags to be advertised from a given device along with the floofing scope associated with the same. It SHOULD allow provisioning a set of per-node administrative tags having a 'domain-wide' flooding scope, as well as, a set of per-node administrative tags with 'level-wide' flooding scope only. A given per-node administrative tag MAY be advertised with level-specific scope (Level-1 and/or Level-2) or with domain-wide scope, but MUST NOT be advertised in both scopes. Hence implementations MUST NOT allow configuring the same per-node administrative tag values in both 'domain-wide' and 'level-wide' scopes. However the same administrative tag value MAY be allowed under multiple levels with 'level-wide' scope.
In deployments using multi-topology routing [RFC5120], since multiple topologies within same IS-IS level do not use seprate Router Capability TLVs (i.e. they share the same flooding scope) a given per-node administrative tag cannot be associated with different charateristic or attribute under different topology. Implementations, in addition to letting user configuring a set of 'level-wide' and 'domain-wide' per-node administrative tags for each level, MAY also allow configuring a set of 'level-wide' and 'domain-wide' tags for each topology. Operators may like to associate a single per-node administrative tag with same attribute across all topologies under a specific (or all) levels. The same should be provisioned under specific 'level-wide' (or 'domain-wide') configurations. However advertising the same tag value across multiple topologies will lead to same inconsistencies as with the case of advertising same tag value across 'domain-wide' and 'level-wide' flooding scope. Hence such implementations that allow configuring topology-specific per-node administrative tags, MUST NOT allow configuring the same topology-specific per-node administrative tag across different topologies. They MUST only allow disjoint sets of topology-specific 'level-wide' and 'domain-wide' per-node administrative tags across different topologies.
The new Per-node Administrative Tag sub-TLV, like other ISIS Capability sub-TLVs, is formatted as Type/Length/Value (TLV)triplets. Figure 1 below shows the format of the new sub-TLV.
0 1 2 3 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | Type | Length | +- +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | Administrative Tag #1 | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | Administrative Tag #2 | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ // // +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | Administrative Tag #N | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ Type : TBA Length: A 8-bit field that indicates the length of the value portion in octets and will be a multiple of 4 octets dependent on the number of tags advertised. Value: A sequence of multiple 4 octets defining the administrative tags.
Figure 1: IS-IS Per-node Administrative Tag sub-TLV
The 'Per-node Admin Tag' sub-TLV may be generated more than once by an originating router. This MAY happen if a node carries more than 63 per-node administrative groups and a single sub-TLV does not provide sufficient space. As such occurence of the 'Per-node Admin Tag' sub-TLV does not cancel previous announcements, but rather is cumulative.
Meaning of the Per-node administrative tags is generally opaque to IS-IS. Router advertising the per-node administrative tag (or tags) may be configured to do so without knowing (or even explicitly supporting) functionality implied by the tag.
Interpretation of tag values is specific to the administrative domain of a particular network operator. The meaning of a per-node administrative tag is defined by the network local policy and is controlled via the configuration. If a receiving node does not understand the tag value, it ignores the specific tag and floods the Router Capability TLV without any change as defined in [RFC4971].
The semantics of the tag order has no meaning. There is no implied meaning to the ordering of the tags that indicates a certain operation or set of operations that need to be performed based on the ordering.
Each tag SHOULD be treated as an independent identifier that MAY be used in policy to perform a policy action. Tags carried by the administrative tag TLV SHOULD be used to indicate independent characteristics of a node. The TLV SHOULD be considered as an unordered list. Whilst policies may be implemented based on the presence of multiple tags (e.g., if tag A AND tag B are present), they MUST NOT be reliant upon the order of the tags (i.e., all policies should be considered commutative operations, such that tag A preceding or following tag B does not change their outcome).
As mentioned earlier, to avoid incomplete or inconsistent interpretations of the per-node administrative tags the same tag value MUST NOT be advertised by a router in Router Capabilities of different scopes. Implementations MUST NOT allow configuring the same tag value across domain-wide and 'level-wide' scopes. The same tag value MAY be allowed to be configured and advertised under 'level-wide' scope for all levels. A IS-IS Area Border Router (ABR) participating in both levels 1 and 2 MAY advertise the same tag value in the level-specific Router Capability TLVs with 'level-wide' scope generated by it. But the same tag value MUST not be advertised in any of level 1 or level 2 Router-Capability TLV with 'domain-wide' flooding scope (refer to [RFC4971] for more details).
The per-node administrative tags sub-TLV don't need to be extended to advertise newer per-node attributes or capabilities in future. Future IS-IS protocol extensions MUST NOT require use of per-node administrative tags or define well-known tag values to advertise well-known capabilities. Per-node administrative tags are for generic use and do not require IANA registry. Theny future IS-IS extensions requiring well known values to advertise well-known capabilities MAY define and use new Router Capability sub-TLVs tailored to the needs of the specific solution (refer to [RFC4971] for more details).
Being part of the Router Capability TLV, the per-node administrative tag sub-TLV MUST be reasonably small and stable. In particular, but not limited to, implementations supporting the per-node administrative tags MUST NOT associate advertised tags to changes in the network topology (both within and outside the IS-IS domain) or reachability of routes.
---------------- / \ / \ / \ +------+ +----+ Access +----+ |eNodeB|---|CSG1| Ring 1 |ASG1|------------- +------+ +----+ +----+ \ \ / \ \ / +----+ +---+ \ +----+ |RSG1|----|RNC| -------------| | Aggregate +----+ +---+ |ASG2| Ring | -------------| | +----+ +---+ / +----+ |RSG2|----|RNC| / \ +----+ +---+ / \ / +------+ +----+ Access +----+ / |eNodeB|---|CSG2| Ring 2 |ASG3|------------ +------+ +----+ +----+ \ / \ / \ / -----------------
Figure 2: Mobile Backhaul Network
+--------------------+ | | | +----------+ | | | | | T-10-T | | /| /| | | / | / | | | --+ | | | | | / +--+-+ 100 | | / / | | | | / / R-18-R | | / / /\ /\ | | / | / \ / \ | | / | / x \ | | A-25-A 10 10 \ \ | | / / 10 10 | | / / \ \ | | A-25-A A-25-A | | \ \ / / | | 201 201 201 201 | | \ \ / / | | \ x / | | \ / \ / | | \/ \/ | | I-24-I 100 100 | | | | | +-----------+ | | | +---------------------+
Figure 3: Explicit Routing topology
This section lists several examples of how implementations might use the Per-node administrative tags. These examples are given only to demonstrate generic usefulness of the router tagging mechanism. Implementation supporting this specification is not required to implement any of the use cases. It is also worth noting that in some described use cases routers configured to advertise tags help other routers in their calculations but do not themselves implement the same functionality.
This document does not introduce any further security issues other than those discussed in [ISO10589] and [RFC1195].
IANA maintains the registry for the Router Capability sub-TLVs. IS-IS Administrative Tags will require new type code for the following new sub-TLV defined in this document.
i) Per-Node-Admin-Tag Sub-TLV, Type: TBD
Many thanks to Les Ginsberg, Dhruv Dhody, Uma Chunduri for useful inputs. Thanks to Chris Bowers for providing useful inputs to remove ambiguity related to tag-ordering.