rfc9666.original | rfc9666.txt | |||
---|---|---|---|---|
Internet Engineering Task Force T. Li | Internet Engineering Task Force (IETF) T. Li | |||
Internet-Draft Juniper Networks | Request for Comments: 9666 Juniper Networks | |||
Intended status: Experimental S. Chen | Category: Experimental S. Chen | |||
Expires: 21 July 2024 V. Ilangovan | ISSN: 2070-1721 V. Ilangovan | |||
Arista Networks | Arista Networks | |||
G. Mishra | G. Mishra | |||
Verizon Inc. | Verizon Inc. | |||
18 January 2024 | October 2024 | |||
Area Proxy for IS-IS | Area Proxy for IS-IS | |||
draft-ietf-lsr-isis-area-proxy-12 | ||||
Abstract | Abstract | |||
Link state routing protocols have hierarchical abstraction already | Link-state routing protocols have hierarchical abstraction already | |||
built into them. However, when lower levels are used for transit, | built into them. However, when lower levels are used for transit, | |||
they must expose their internal topologies to each other, leading to | they must expose their internal topologies to each other, thereby | |||
scale issues. | leading to scaling issues. | |||
To avoid this, this document discusses extensions to the IS-IS | To avoid such issues, this document discusses extensions to the IS-IS | |||
routing protocol that allow level 1 areas to provide transit, yet | routing protocol that allow Level 1 (L1) areas to provide transit but | |||
only inject an abstraction of the level 1 topology into level 2. | only inject an abstraction of the Level 1 topology into Level 2 (L2). | |||
Each level 1 area is represented as a single level 2 node, thereby | Each Level 1 area is represented as a single Level 2 node, thereby | |||
enabling greater scale. | enabling a greater scale. | |||
Status of This Memo | Status of This Memo | |||
This Internet-Draft is submitted in full conformance with the | This document is not an Internet Standards Track specification; it is | |||
provisions of BCP 78 and BCP 79. | published for examination, experimental implementation, and | |||
evaluation. | ||||
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 https://datatracker.ietf.org/drafts/current/. | ||||
Internet-Drafts are draft documents valid for a maximum of six months | This document defines an Experimental Protocol for the Internet | |||
and may be updated, replaced, or obsoleted by other documents at any | community. This document is a product of the Internet Engineering | |||
time. It is inappropriate to use Internet-Drafts as reference | Task Force (IETF). It represents the consensus of the IETF | |||
material or to cite them other than as "work in progress." | community. It has received public review and has been approved for | |||
publication by the Internet Engineering Steering Group (IESG). Not | ||||
all documents approved by the IESG are candidates for any level of | ||||
Internet Standard; see Section 2 of RFC 7841. | ||||
This Internet-Draft will expire on 21 July 2024. | Information about the current status of this document, any errata, | |||
and how to provide feedback on it may be obtained at | ||||
https://www.rfc-editor.org/info/rfc9666. | ||||
Copyright Notice | Copyright Notice | |||
Copyright (c) 2024 IETF Trust and the persons identified as the | Copyright (c) 2024 IETF Trust and the persons identified as the | |||
document authors. All rights reserved. | document authors. All rights reserved. | |||
This document is subject to BCP 78 and the IETF Trust's Legal | This document is subject to BCP 78 and the IETF Trust's Legal | |||
Provisions Relating to IETF Documents (https://trustee.ietf.org/ | Provisions Relating to IETF Documents | |||
license-info) in effect on the date of publication of this document. | (https://trustee.ietf.org/license-info) in effect on the date of | |||
Please review these documents carefully, as they describe your rights | publication of this document. Please review these documents | |||
and restrictions with respect to this document. Code Components | carefully, as they describe your rights and restrictions with respect | |||
extracted from this document must include Revised BSD License text as | to this document. Code Components extracted from this document must | |||
described in Section 4.e of the Trust Legal Provisions and are | include Revised BSD License text as described in Section 4.e of the | |||
provided without warranty as described in the Revised BSD License. | Trust Legal Provisions and are provided without warranty as described | |||
in the Revised BSD License. | ||||
Table of Contents | Table of Contents | |||
1. Introduction . . . . . . . . . . . . . . . . . . . . . . . . 3 | 1. Introduction | |||
1.1. Requirements Language . . . . . . . . . . . . . . . . . . 4 | 1.1. Requirements Language | |||
2. Area Proxy . . . . . . . . . . . . . . . . . . . . . . . . . 4 | 2. Area Proxy | |||
2.1. Segment Routing . . . . . . . . . . . . . . . . . . . . . 6 | 2.1. Segment Routing | |||
3. Inside Router Functions . . . . . . . . . . . . . . . . . . . 6 | 3. Inside Router Functions | |||
3.1. The Area Proxy TLV . . . . . . . . . . . . . . . . . . . 7 | 3.1. The Area Proxy TLV | |||
3.2. Level 2 SPF Computation . . . . . . . . . . . . . . . . . 7 | 3.2. Level 2 SPF Computation | |||
3.3. Responsibilities concerning the Proxy LSP . . . . . . . . 8 | 3.3. Responsibilities Concerning the Proxy LSP | |||
4. Area Leader Functions . . . . . . . . . . . . . . . . . . . . 8 | 4. Area Leader Functions | |||
4.1. Area Leader Election . . . . . . . . . . . . . . . . . . 8 | 4.1. Area Leader Election | |||
4.2. Redundancy . . . . . . . . . . . . . . . . . . . . . . . 8 | 4.2. Redundancy | |||
4.3. Distributing Area Proxy Information . . . . . . . . . . . 8 | 4.3. Distributing Area Proxy Information | |||
4.3.1. The Area Proxy System ID Sub-TLV . . . . . . . . . . 9 | 4.3.1. The Area Proxy System Identifier Sub-TLV | |||
4.3.2. The Area SID Sub-TLV . . . . . . . . . . . . . . . . 10 | 4.3.2. The Area SID Sub-TLV | |||
4.4. Proxy LSP Generation . . . . . . . . . . . . . . . . . . 11 | 4.4. Proxy LSP Generation | |||
4.4.1. The Protocols Supported TLV . . . . . . . . . . . . . 11 | 4.4.1. The Protocols Supported TLV | |||
4.4.2. The Area Address TLV . . . . . . . . . . . . . . . . 11 | 4.4.2. The Area Address TLV | |||
4.4.3. The Dynamic Hostname TLV . . . . . . . . . . . . . . 11 | 4.4.3. The Dynamic Hostname TLV | |||
4.4.4. The IS Neighbors TLV . . . . . . . . . . . . . . . . 12 | 4.4.4. The IS Neighbors TLV | |||
4.4.5. The Extended IS Neighbors TLV . . . . . . . . . . . . 12 | 4.4.5. The Extended IS Neighbors TLV | |||
4.4.6. The MT Intermediate Systems TLV . . . . . . . . . . . 12 | 4.4.6. The MT Intermediate Systems TLV | |||
4.4.7. Reachability TLVs . . . . . . . . . . . . . . . . . . 13 | 4.4.7. Reachability TLVs | |||
4.4.8. The Router Capability TLV . . . . . . . . . . . . . . 13 | 4.4.8. The Router Capability TLV | |||
4.4.9. The Multi-Topology TLV . . . . . . . . . . . . . . . 14 | 4.4.9. The Multi-Topology TLV | |||
4.4.10. The SID/Label Binding and The Multi-Topology SID/Label | 4.4.10. The SID/Label Binding and the Multi-Topology SID/Label | |||
Binding SID TLV . . . . . . . . . . . . . . . . . . . 14 | Binding TLV | |||
4.4.11. The SRv6 Locator TLV . . . . . . . . . . . . . . . . 14 | 4.4.11. The SRv6 Locator TLV | |||
4.4.12. Traffic Engineering Information . . . . . . . . . . . 14 | 4.4.12. Traffic Engineering Information | |||
4.4.13. The Area SID . . . . . . . . . . . . . . . . . . . . 15 | 4.4.13. The Area SID | |||
5. Inside Edge Router Functions . . . . . . . . . . . . . . . . 15 | 5. Inside Edge Router Functions | |||
5.1. Generating L2 IIHs to Outside Routers . . . . . . . . . . 15 | 5.1. Generating L2 IIHs to Outside Routers | |||
5.2. Filtering LSP information . . . . . . . . . . . . . . . . 16 | 5.2. Filtering LSP Information | |||
6. Acknowledgments . . . . . . . . . . . . . . . . . . . . . . . 16 | 6. IANA Considerations | |||
7. IANA Considerations . . . . . . . . . . . . . . . . . . . . . 16 | 7. Security Considerations | |||
8. Security Considerations . . . . . . . . . . . . . . . . . . . 17 | 8. References | |||
9. References . . . . . . . . . . . . . . . . . . . . . . . . . 17 | 8.1. Normative References | |||
9.1. Normative References . . . . . . . . . . . . . . . . . . 17 | 8.2. Informative References | |||
9.2. Informative References . . . . . . . . . . . . . . . . . 19 | Acknowledgements | |||
Authors' Addresses . . . . . . . . . . . . . . . . . . . . . . . 19 | Authors' Addresses | |||
1. Introduction | 1. Introduction | |||
The IS-IS routing protocol IS-IS [ISO10589] supports a two-level | The IS-IS routing protocol [ISO10589] supports a two-level hierarchy | |||
hierarchy of abstraction. The fundamental unit of abstraction is the | of abstraction. The fundamental unit of abstraction is the "area", | |||
'area', which is a (hopefully) connected set of systems running IS-IS | which is a (hopefully) connected set of systems running IS-IS at the | |||
at the same level. Level 1, the lowest level, is abstracted by | same level. Level 1, the lowest level, is abstracted by routers that | |||
routers that participate in both Level 1 and Level 2, and they inject | participate in both Level 1 and Level 2, and they inject area | |||
area information into Level 2. Level 2 systems seeking to access | information into Level 2. Level 2 systems seeking to access Level 1 | |||
Level 1, use this abstraction to compute the shortest path to the | use this abstraction to compute the shortest path to the Level 1 | |||
Level 1 area. The full topology database of Level 1 is not injected | area. The full topology database of Level 1 is not injected into | |||
into Level 2, only a summary of the address space contained within | Level 2, rather, only a summary of the address space contained within | |||
the area, so the scalability of the Level 2 Link State Database | the area is injected. Therefore, the scalability of the Level 2 Link | |||
(LSDB) is protected. | State Database (LSDB) is protected. | |||
This works well if the Level 1 area is tangential to the Level 2 | This works well if the Level 1 area is tangential to the Level 2 | |||
area. This also works well if there are several routers in both | area. This also works well if there are several routers in both | |||
Level 1 and Level 2 and they are adjacent to one another, so Level 2 | Levels 1 and 2 and they are adjacent to one another, so Level 2 | |||
traffic will never need to transit Level 1 only routers. Level 1 | traffic will never need to transit Level 1 only routers. Level 1 | |||
will not contain any Level 2 topology, and Level 2 will only contain | will not contain any Level 2 topology and Level 2 will only contain | |||
area abstractions for Level 1. | area abstractions for Level 1. | |||
Unfortunately, this scheme does not work so well if the Level 1 only | Unfortunately, this scheme does not work so well if the Level 1 only | |||
area needs to provide transit for Level 2 traffic. For Level 2 | area needs to provide transit for Level 2 traffic. For Level 2 | |||
shortest path first (SPF) computations to work correctly, the transit | Shortest Path First (SPF) computations to work correctly, the transit | |||
topology must also appear in the Level 2 LSDB. This implies that all | topology must also appear in the Level 2 LSDB. This implies that all | |||
routers that could provide transit, plus any links that might also | routers that could provide transit plus any links that might also | |||
provide Level 2 transit must also become part of the Level 2 | provide Level 2 transit must also become part of the Level 2 | |||
topology. If this is a relatively tiny portion of the Level 1 area, | topology. If this is a relatively tiny portion of the Level 1 area, | |||
this is not overly painful. | this is not overly painful. | |||
However, with today's data center topologies, this is problematic. A | However, with today's data center topologies, this is problematic. A | |||
common application is to use a Layer 3 Leaf-Spine (L3LS) topology, | common application is to use a Layer 3 Leaf-Spine (L3LS) topology, | |||
which is a folded 3-stage Clos [Clos] fabric. It can also be thought | which is a folded 3-stage Clos fabric [Clos]. It can also be thought | |||
of as a complete bipartite graph. In such a topology, the desire is | of as a complete bipartite graph. In such a topology, the desire is | |||
to use Level 1 to contain the routing dynamics of the entire L3LS | to use Level 1 to contain the routing dynamics of the entire L3LS | |||
topology and then use Level 2 for the remainder of the network. | topology and then use Level 2 for the remainder of the network. | |||
Leaves in the L3LS topology are appropriate for connection outside of | Leaves in the L3LS topology are appropriate for connection outside of | |||
the data center itself, so they would provide connectivity for Level | the data center itself, so they would provide connectivity for Level | |||
2. If there are multiple connections to Level 2 for redundancy, or | 2. If there are multiple connections to Level 2 for redundancy or | |||
other areas, these too would also be made to the leaves in the | other areas, these would also be made to the leaves in the topology. | |||
topology. This creates a difficulty because there are now multiple | This creates a difficulty because there are now multiple Level 2 | |||
Level 2 leaves in the topology, with connectivity between the leaves | leaves in the topology, with connectivity between the leaves provided | |||
provided by the spines. | by the spines. | |||
Following the current rules of IS-IS, all spine routers would | Following the current rules of IS-IS, all spine routers would | |||
necessarily be part of the Level 2 topology, plus all links between a | necessarily be part of the Level 2 topology plus all links between a | |||
Level 2 leaf and the spines. In the limit, where all leaves need to | Level 2 leaf and the spines. In the limit, where all leaves need to | |||
support Level 2, it implies that the entire L3LS topology becomes | support Level 2, it implies that the entire L3LS topology becomes | |||
part of Level 2. This is seriously problematic as it more than | part of Level 2. This is seriously problematic, as it more than | |||
doubles the LSDB held in the L3LS topology and eliminates any | doubles the LSDB held in the L3LS topology and eliminates any | |||
benefits of the hierarchy. | benefits of the hierarchy. | |||
This document discusses the handling of IP traffic. Supporting MPLS- | This document discusses the handling of IP traffic. Supporting MPLS- | |||
based traffic is a subject for future work. | based traffic is a subject for future work. | |||
1.1. Requirements Language | 1.1. Requirements Language | |||
The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT", | The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT", | |||
"SHOULD", "SHOULD NOT", "RECOMMENDED", "MAY", and "OPTIONAL" in this | "SHOULD", "SHOULD NOT", "RECOMMENDED", "NOT RECOMMENDED", "MAY", and | |||
document are to be interpreted as described in BCP 14 [RFC2119] | "OPTIONAL" in this document are to be interpreted as described in | |||
[RFC8174] when, and only when, they appear in all capitals, as shown | BCP 14 [RFC2119] [RFC8174] when, and only when, they appear in all | |||
here. | capitals, as shown here. | |||
2. Area Proxy | 2. Area Proxy | |||
To address this, in this specification we completely abstract away | In this specification, we completely abstract away the details of the | |||
the details of the Level 1 area topology within Level 2, making the | Level 1 area topology within Level 2, making the entire area look | |||
entire area look like a single proxy system directly connected to all | like a single proxy system directly connected to all of the area's | |||
of the area's Level 2 neighbors. By only providing an abstraction of | Level 2 neighbors. By only providing an abstraction of the topology, | |||
the topology, Level 2's requirement for connectivity can be satisfied | Level 2's requirement for connectivity can be satisfied without the | |||
without the full overhead of the area's internal topology. It then | full overhead of the area's internal topology. It then becomes the | |||
becomes the responsibility of the Level 1 area to provide the | responsibility of the Level 1 area to provide the forwarding | |||
forwarding connectivity that's advertised. | connectivity that's advertised. | |||
For this discussion, we'll consider a single Level 1 IS-IS area to be | For this discussion, we'll consider a single Level 1 IS-IS area to be | |||
the Inside Area, and the remainder of the Level 2 area to be the | the Inside Area and the remainder of the Level 2 area to be the | |||
Outside Area. All routers within the Inside Area speak Level 1 and | Outside Area. All routers within the Inside Area speak Level 1 and | |||
Level 2 IS-IS on all of the links within the topology. We propose to | Level 2 IS-IS on all of the links within the topology. We propose to | |||
implement Area Proxy by having a Level 2 Proxy Link State Protocol | implement Area Proxy by having a Level 2 Proxy Link State PDU (LSP) | |||
Data Unit (PDU, LSP) that represents the entire Inside Area. We will | that represents the entire Inside Area. We will refer to this as the | |||
refer to this as the Proxy LSP. This is the only LSP from the area | Proxy LSP. This is the only LSP from the area that will be flooded | |||
that will be flooded into the overall Level 2 LSDB. | into the overall Level 2 LSDB. | |||
There are four classes of routers that we need to be concerned with | There are four classes of routers that we need to be concerned with | |||
in this discussion: | in this discussion: | |||
Inside Router A router within the Inside Area that runs Level 1 and | Inside Router: A router within the Inside Area that runs Level 1 and | |||
Level 2 IS-IS. A router is recognized as an Inside Router by the | Level 2 IS-IS. A router is recognized as an Inside Router by the | |||
existence of its LSP in the Level 1 LSDB. | existence of its LSP in the Level 1 LSDB. | |||
Area Leader The Area Leader is an Inside Router that is elected to | Area Leader: The Area Leader is an Inside Router that is elected to | |||
represent the Level 1 area by injecting the Proxy LSP into the | represent the Level 1 area by injecting the Proxy LSP into the | |||
Level 2 LSDB. There may be multiple candidates for Area Leader, | Level 2 LSDB. There may be multiple candidates for Area Leader, | |||
but only one is elected at a given time. Any Inside Router can be | but only one is elected at a given time. Any Inside Router can be | |||
Area Leader. | the Area Leader. | |||
Inside Edge Router An Inside Edge Router is an Inside Area Router | Inside Edge Router: An Inside Edge Router is an Inside Area Router | |||
that has at least one Level 2 interface outside of the Inside | that has at least one Level 2 interface outside of the Inside | |||
Area. An interface on an Inside Edge Router that is connected to | Area. An interface on an Inside Edge Router that is connected to | |||
an Outside Edge Router is an Area Proxy Boundary. | an Outside Edge Router is an Area Proxy Boundary. | |||
Outside Edge Router An Outside Edge Router is a Level 2 router that | Outside Edge Router: An Outside Edge Router is a Level 2 router that | |||
is outside of the Inside Area that has an adjacency with an Inside | is outside of the Inside Area that has an adjacency with an Inside | |||
Edge Router. | Edge Router. | |||
Inside Area | Inside Area | |||
+--------+ +--------+ | +--------+ +--------+ | |||
| Inside |-----------------| Inside | | | Inside |-----------------| Inside | | |||
| Router | | Edge | | | Router | | Edge | | |||
+--------+ +------------| Router | | +--------+ +------------| Router | | |||
| / +--------+ | | / +--------+ | |||
skipping to change at page 5, line 36 ¶ | skipping to change at line 224 ¶ | |||
+--------+ / =============|====== | +--------+ / =============|====== | |||
| Area |/ || | | | Area |/ || | | |||
| Leader | || +---------+ | | Leader | || +---------+ | |||
+--------+ || | Outside | | +--------+ || | Outside | | |||
|| | Edge | | || | Edge | | |||
|| | Router | | || | Router | | |||
|| +---------+ | || +---------+ | |||
Outside Area | Outside Area | |||
Figure 1: An example of router classes | Figure 1: An Example of Router Classes | |||
All Inside Edge Routers learn the Area Proxy System Identifier from | All Inside Edge Routers learn the Area Proxy System Identifier from | |||
the Area Proxy TLV advertised by the Area Leader and use that as the | the Area Proxy TLV advertised by the Area Leader and use that as the | |||
system identifier in their Level 2 IS-IS Hello PDUs (IIHs) on all | system identifier in their Level 2 IS-IS Hello (IIH) PDUs on all | |||
Outside interfaces. Outside Edge Routers will then advertise an | Outside interfaces. Outside Edge Routers will then advertise an | |||
adjacency to the Area Proxy System Identifier. This allows all | adjacency to the Area Proxy System Identifier. This allows all | |||
Outside Routers to use the Proxy LSP in their SPF computations | Outside Routers to use the Proxy LSP in their SPF computations | |||
without seeing the full topology of the Inside Area. | without seeing the full topology of the Inside Area. | |||
Area Proxy functionality assumes that all circuits on Inside Routers | Area Proxy functionality assumes that all circuits on Inside Routers | |||
are either Level 1-2 circuits within the Inside Area, or Level 2 | are either Level 1-2 circuits within the Inside Area, or Level 2 | |||
circuits between Outside Edge Routers and Inside Edge Routers. | circuits between Outside Edge Routers and Inside Edge Routers. | |||
Area Proxy Boundary multi-access circuits (i.e., Ethernets in LAN | Area Proxy Boundary multi-access circuits (i.e., Ethernets in LAN | |||
mode) with multiple Inside Edge Routers on them are not supported. | mode) with multiple Inside Edge Routers on them are not supported. | |||
The Inside Edge Router on any boundary LAN MUST NOT flood Inside | The Inside Edge Router on any boundary LAN MUST NOT flood Inside | |||
Router LSPs on this link. Boundary LANs SHOULD NOT be enabled for | Router LSPs on this link. Boundary LANs SHOULD NOT be enabled for | |||
Level 1. An Inside Edge Router may be elected the Designated | Level 1. An Inside Edge Router may be elected as the Designated | |||
Intermediate System (DIS) for a Boundary LAN. In this case, using | Intermediate System (DIS) for a Boundary LAN. In this case, using | |||
the Area Proxy System ID as the basis for the LAN pseudonode | the Area Proxy System ID as the basis for the LAN pseudonode | |||
identifier could create a collision, so the Insider Edge Router | identifier could create a collision, so the Insider Edge Router | |||
SHOULD compose the pseudonode identifier using its native system | SHOULD compose the pseudonode identifier using its originally | |||
identifier. This choice of pseudonode identifier may confuse | configured system identifier. This choice of pseudonode identifier | |||
neighbors with an extremely strict implementation, in which case the | may confuse neighbors with an extremely strict implementation. In | |||
Inside Edge Router may be configured with priority 0, causing an | this case, the Inside Edge Router may be configured with priority 0, | |||
Outside Router to be elected DIS. | causing an Outside Router to be elected as the DIS. | |||
2.1. Segment Routing | 2.1. Segment Routing | |||
If the Inside Area supports Segment Routing [RFC8402], then all | If the Inside Area supports Segment Routing (SR) [RFC8402], then all | |||
Inside Nodes MUST advertise an SR Global Block (SRGB). The first | Inside Nodes MUST advertise a Segment Routing Global Block (SRGB). | |||
value of the SRGB advertised by all Inside Nodes MUST start at the | The first value of the SRGB advertised by all Inside Nodes MUST start | |||
same value. If the Area Leader detects SRGBs that do not start with | at the same value. If the Area Leader detects SRGBs that do not | |||
the same value, it MUST log an error and not advertise an SRGB in the | start with the same value, it MUST log an error and not advertise an | |||
Proxy LSP. The range advertised for the area will be the minimum of | SRGB in the Proxy LSP. The range advertised for the area will be the | |||
that advertised by all Inside Nodes. | minimum of that advertised by all Inside Nodes. | |||
To support Segment Routing, the Area Leader will take the SRGB | To support SR, the Area Leader will take the SRGB information found | |||
information found in the L1 LSDB and convey that to L2 through the | in the L1 LSDB and convey that to L2 through the Proxy LSP. Prefixes | |||
Proxy LSP. Prefixes with SID assignments will be copied to the Proxy | with Segment Identifier (SID) assignments will be copied to the Proxy | |||
LSP. Adjacency SIDs for Outside Edge Nodes will be copied to the | LSP. Adjacency SIDs for Outside Edge Nodes will be copied to the | |||
Proxy LSP. | Proxy LSP. | |||
To further extend Segment Routing, it is helpful to have a segment | To further extend SR, it is helpful to have a segment that refers to | |||
that refers to the entire Inside Area. This allows a path to refer | the entire Inside Area. This allows a path to refer to an area and | |||
to an area and have any node within that area accept and forward the | have any node within that area accept and forward the packet. In | |||
packet. In effect, this becomes an anycast SID that is accepted by | effect, this becomes an anycast SID that is accepted by all Inside | |||
all Inside Edge Nodes. The information about this SID is distributed | Edge Nodes. The information about this SID is distributed in the | |||
in the Area SID Sub-TLV, as part of the Area Leader's Area Proxy TLV | Area SID sub-TLV as part of the Area Leader's Area Proxy TLV | |||
(Section 4.3.2). The Inside Edge Nodes MUST establish forwarding | (Section 4.3.2). The Inside Edge Nodes MUST establish forwarding | |||
based on this SID. The Area Leader SHALL also include the Area SID | based on this SID. The Area Leader SHALL also include the Area SID | |||
in the Proxy LSP so that the remainder of L2 can use it for path | in the Proxy LSP so that the remainder of L2 can use it for path | |||
construction. (Section 4.4.13). | construction. (Section 4.4.13). | |||
3. Inside Router Functions | 3. Inside Router Functions | |||
All Inside Routers run Level 1-2 IS-IS and must be explicitly | All Inside Routers run Level 1-2 IS-IS and must be explicitly | |||
instructed to enable the Area Proxy functionality. To signal their | instructed to enable the Area Proxy functionality. To signal their | |||
readiness to participate in Area Proxy functionality, they will | readiness to participate in Area Proxy functionality, they will | |||
advertise the Area Proxy TLV in their L2 LSP. | advertise the Area Proxy TLV in their L2 LSP. | |||
3.1. The Area Proxy TLV | 3.1. The Area Proxy TLV | |||
The Area Proxy TLV serves multiple functions: | The Area Proxy TLV serves multiple functions: | |||
The presence of the Area Proxy TLV in a node's LSP indicates that | * The presence of the Area Proxy TLV in a node's LSP indicates that | |||
the node is enabled for Area Proxy. | the node is enabled for Area Proxy. | |||
An LSP containing the Area Proxy TLV is also an Inside Node. All | * An LSP containing the Area Proxy TLV is also an Inside Node. All | |||
Inside Nodes, including pseudonodes, MUST advertise the Area Proxy | Inside Nodes, including pseudonodes, MUST advertise the Area Proxy | |||
TLV. | TLV. | |||
It is a container for sub-TLVs with Area Proxy information. | * It is a container for sub-TLVs with Area Proxy information. | |||
A node advertises the Area Proxy TLV in fragment 0 of its L2 LSP. | A node advertises the Area Proxy TLV in fragment 0 of its L2 LSP. | |||
Nodes MUST NOT advertise the Area Proxy TLV in an L1 LSP. Nodes MUST | Nodes MUST NOT advertise the Area Proxy TLV in an L1 LSP. Nodes MUST | |||
ignore the Area Proxy TLV if it is found in an L1 LSP. The Area | ignore the Area Proxy TLV if it is found in an L1 LSP. The Area | |||
Proxy TLV is not used in the Proxy LSP. The format of the Area Proxy | Proxy TLV is not used in the Proxy LSP. The format of the Area Proxy | |||
TLV is: | TLV is: | |||
0 1 2 | 0 1 2 | |||
0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 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 | |||
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | |||
| TLV Type | TLV Length | Sub-TLVs ... | | TLV Type | TLV Length | Sub-TLVs ... | |||
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | |||
TLV Type: 20 | TLV Type: 20 | |||
TLV Length: length of the sub-TLVs | TLV Length: Length of the sub-TLVs. | |||
3.2. Level 2 SPF Computation | 3.2. Level 2 SPF Computation | |||
When Outside Routers perform a Level 2 SPF computation, they will use | When Outside Routers perform a Level 2 SPF computation, they will use | |||
the Proxy LSP for computing a path transiting the Inside Area. | the Proxy LSP for computing a path transiting the Inside Area. | |||
Because the topology has been abstracted away, the cost for | Because the topology has been abstracted away, the cost for | |||
transiting the Inside Area will be zero. | transiting the Inside Area will be zero. | |||
When Inside Routers perform a Level 2 SPF computation, they MUST | When Inside Routers perform a Level 2 SPF computation, they MUST | |||
ignore the Proxy LSP. Further, because these systems do see the | ignore the Proxy LSP. Because these systems see the Inside Area | |||
Inside Area topology, the link metrics internal to the area are | topology, the link metrics internal to the area are visible. This | |||
visible. This could lead to different and possibly inconsistent SPF | could lead to different and possibly inconsistent SPF results, | |||
results, potentially leading to forwarding loops. | potentially leading to forwarding loops. | |||
To prevent this, the Inside Routers MUST consider the metrics of | To prevent this, the Inside Routers MUST consider the metrics of | |||
links outside of the Inside Area (inter-area metrics) separately from | links outside of the Inside Area (inter-area metrics) separately from | |||
the metrics of the Inside Area links (intra-area metrics). Intra- | the metrics of the Inside Area links (intra-area metrics). Intra- | |||
area metrics MUST be treated as less than any inter-area metric. | area metrics MUST be treated as less than any inter-area metric. | |||
Thus, if two paths have different total inter-area metrics, the path | Thus, if two paths have different total inter-area metrics, the path | |||
with the lower inter-area metric would be preferred, regardless of | with the lower inter-area metric would be preferred regardless of any | |||
any intra-area metrics involved. However, if two paths have equal | intra-area metrics involved. However, if two paths have equal inter- | |||
inter-area metrics, then the intra-area metrics would be used to | area metrics, then the intra-area metrics would be used to compare | |||
compare the paths. | the paths. | |||
Point-to-point links between two Inside Routers are considered to be | Point-to-point links between two Inside Routers are considered to be | |||
Inside Area links. LAN links which have a pseudonode LSP in the | Inside Area links. LAN links that have a pseudonode LSP in the Level | |||
Level 1 LSDB are considered to be Inside Area links. | 1 LSDB are considered to be Inside Area links. | |||
3.3. Responsibilities concerning the Proxy LSP | 3.3. Responsibilities Concerning the Proxy LSP | |||
The Area Leader will generate a Proxy LSP that will be flooded across | The Area Leader will generate a Proxy LSP that will be flooded across | |||
the Inside Area. Inside Routers MUST ignore the contents of the | the Inside Area. Inside Routers MUST flood the Proxy LSP and MUST | |||
Proxy LSP other than for flooding. The Proxy LSP uses the Area Proxy | ignore its contents. The Proxy LSP uses the Area Proxy System | |||
System Identifier as its Source ID. | Identifier as its Source ID. | |||
4. Area Leader Functions | 4. Area Leader Functions | |||
The Area Leader has several responsibilities. First, it MUST inject | The Area Leader has several responsibilities. First, it MUST inject | |||
the Area Proxy System Identifier into the Level 2 LSDB. Second, the | the Area Proxy System Identifier into the Level 2 LSDB. Second, the | |||
Area Leader MUST generate the Proxy LSP for the Inside Area. | Area Leader MUST generate the Proxy LSP for the Inside Area. | |||
4.1. Area Leader Election | 4.1. Area Leader Election | |||
The Area Leader is selected using the election mechanisms and TLVs | The Area Leader is selected using the election mechanisms and TLVs | |||
described in Dynamic Flooding for IS-IS | described in "Dynamic Flooding on Dense Graphs" [RFC9667]. | |||
[I-D.ietf-lsr-dynamic-flooding]. | ||||
4.2. Redundancy | 4.2. Redundancy | |||
If the Area Leader fails, another candidate may become Area Leader | If the Area Leader fails, another candidate may become Area Leader | |||
and MUST regenerate the Proxy LSP. The failure of the Area Leader is | and MUST regenerate the Proxy LSP. The failure of the Area Leader is | |||
not visible outside of the area and appears to simply be an update of | not visible outside of the area and appears to simply be an update of | |||
the Proxy LSP. | the Proxy LSP. | |||
For consistency, all Area Leader candidates SHOULD be configured with | For consistency, all Area Leader candidates SHOULD be configured with | |||
the same Proxy System ID, Proxy Hostname, and any other information | the same Proxy System ID, Proxy Hostname, and any other information | |||
that may be inserted into the Proxy LSP. | that may be inserted into the Proxy LSP. | |||
4.3. Distributing Area Proxy Information | 4.3. Distributing Area Proxy Information | |||
The Area Leader is responsible for distributing information about the | The Area Leader is responsible for distributing information about the | |||
area to all Inside Nodes. In particular, the Area Leader distributes | area to all Inside Nodes. In particular, the Area Leader distributes | |||
the Proxy System ID and the Area SID. This is done using two sub- | the Proxy System ID and the Area SID. This is done using two sub- | |||
TLVs of the Area Proxy TLV. | TLVs of the Area Proxy TLV. | |||
4.3.1. The Area Proxy System ID Sub-TLV | 4.3.1. The Area Proxy System Identifier Sub-TLV | |||
The Area Proxy System ID Sub-TLV MUST be used by the Area Leader to | The Area Proxy System Identifier sub-TLV MUST be used by the Area | |||
distribute the Area Proxy System ID. This is an additional system | Leader to distribute the Area Proxy System ID. This is an additional | |||
identifier that is used by Inside Nodes as an indication that Area | system identifier that is used by Inside Nodes as an indication that | |||
Proxy is active. The format of this sub-TLV is: | Area Proxy is active. The format of this sub-TLV is: | |||
0 1 2 | 0 1 2 | |||
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 | 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 | | | | Type | Length | | | |||
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ Proxy System Identifier | | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ Proxy System Identifier | | |||
| | | | | | |||
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | |||
Type: 1 | Type: 1 | |||
Length: length of a system ID (6) | Length: Length of a system ID (6). | |||
Proxy System Identifier: the Area Proxy System Identifier. | Proxy System Identifier: The Area Proxy System Identifier. | |||
The Area Leader MUST advertise the Area Proxy System Identifier Sub- | The Area Leader MUST advertise the Area Proxy System Identifier sub- | |||
TLV when it observes that all Inside Routers are advertising the Area | TLV when it observes that all Inside Routers are advertising the Area | |||
Proxy TLV. Their advertisements indicate that they are individually | Proxy TLV. Their advertisements indicate that they are individually | |||
ready to perform Area Proxy functionality. The Area Leader then | ready to perform Area Proxy functionality. The Area Leader then | |||
advertises the Area Proxy System Identifier TLV to indicate that the | advertises the Area Proxy System Identifier TLV to indicate that the | |||
Inside Area MUST enable Area Proxy functionality. | Inside Area MUST enable Area Proxy functionality. | |||
Other candidates for Area Leader MAY also advertise the Area Proxy | Other candidates for Area Leader MAY also advertise the Area Proxy | |||
System Identifier when they observe that all Inside Routers are | System Identifier when they observe that all Inside Routers are | |||
advertising the Area Proxy Router Capability. All candidates | advertising the Area Proxy TLV. All candidates advertising the Area | |||
advertising the Area Proxy System Identifier TLV SHOULD be | Proxy System Identifier TLV SHOULD be advertising the same system | |||
advertising the same system identifier. Multiple proxy system | identifier. Multiple proxy system identifiers in a single area is a | |||
identifiers in a single area is a misconfiguration and each unique | misconfiguration and each unique occurrence SHOULD be logged. | |||
occurrence SHOULD be logged. Systems should use the proxy system | Systems should use the Proxy System ID advertised by the Area Leader. | |||
identifier advertised by the Area Leader. | ||||
The Area Leader and other candidates for Area Leader MAY withdraw the | The Area Leader and other candidates for Area Leader MAY withdraw the | |||
Area Proxy System Identifier when one or more Inside Routers are not | Area Proxy System Identifier when one or more Inside Routers are not | |||
advertising the Area Proxy Router Capability. This will disable Area | advertising the Area Proxy TLV. This will disable Area Proxy | |||
Proxy functionality. However, before withdrawing the Area Proxy | functionality. However, before withdrawing the Area Proxy System | |||
System Identifier, an implementation SHOULD protect against | Identifier, an implementation SHOULD protect against unnecessary | |||
unnecessary churn from transients by delaying the withdrawal. The | churn from transients by delaying the withdrawal. The amount of | |||
amount of delay is implementation dependent. | delay is implementation dependent. | |||
4.3.2. The Area SID Sub-TLV | 4.3.2. The Area SID Sub-TLV | |||
The Area SID Sub-TLV allows the Area Leader to advertise a prefix and | The Area SID sub-TLV allows the Area Leader to advertise a prefix and | |||
SID that represents the entirety of the Inside Area to the Outside | SID that represent the entirety of the Inside Area to the Outside | |||
Area. This sub-TLV is learned by all of the Inside Edge Nodes who | Area. This sub-TLV is learned by all of the Inside Edge Nodes who | |||
should consume this SID at forwarding time. The Area SID Sub-TLV has | should consume this SID at forwarding time. The Area SID sub-TLV has | |||
the format: | the following format: | |||
0 1 2 | 0 1 2 | |||
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 | 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 | Flags | | | Type | Length | Flags | | |||
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | |||
| SID/Index/Label (variable) | | | SID/Index/Label (variable) | | |||
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | |||
| Prefix Length | Prefix (variable) | | | Prefix Length | Prefix (variable) | | |||
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | |||
where: | where: | |||
Type: 2 | Type: 2 | |||
Length: variable (1 + SID length) | ||||
Flags: 1 octet. | ||||
SID/Index/Label: as defined in [RFC8667] Section 2.1.1.1 | Length: Variable (1 + SID length) | |||
Prefix Length: 1 octet | Flags: 1 octet, defined as follows. | |||
Prefix: 0-16 octets | 0 1 2 3 4 5 6 7 | |||
+-+-+-+-+-+-+-+-+ | ||||
|F|V|L| | | ||||
+-+-+-+-+-+-+-+-+ | ||||
The Flags octet is defined as follows: | F: Address-Family Flag. If this flag is not set, then this proxy | |||
SID is used when forwarding IPv4-encapsulated traffic. If | ||||
set, then this proxy SID is used when forwarding | ||||
IPv6-encapsulated traffic. | ||||
0 1 2 3 4 5 6 7 | V: Value Flag. If set, then the proxy SID carries a value, as | |||
+-+-+-+-+-+-+-+-+ | defined in [RFC8667], Section 2.1.1.1. | |||
|F|V|L| | | ||||
+-+-+-+-+-+-+-+-+ | ||||
where: | L: Local Flag. If set, then the value/index carried by the proxy | |||
SID has local significance, as defined in [RFC8667], | ||||
Section 2.1.1.1. | ||||
F: Address-Family Flag. If unset, then this proxy SID is used | Other bits: MUST be zero when originated and ignored when | |||
when forwarding IPv4-encapsulated traffic. If set, then this | received. | |||
proxy SID is used when forwarding IPv6-encapsulated traffic. | ||||
V: Value Flag. If set, then the proxy SID carries a value, as | SID/Index/Label: As defined in [RFC8667], Section 2.1.1.1. | |||
defined in [RFC8667] Section 2.1.1.1. | ||||
L: Local Flag. If set, then the value/index carried by the proxy | Prefix Length: 1 octet | |||
SID has local significance, as defined in [RFC8667] | ||||
Section 2.1.1.1. | ||||
Other bits: MUST be zero when originated and ignored when | Prefix: 0-16 octets | |||
received. | ||||
4.4. Proxy LSP Generation | 4.4. Proxy LSP Generation | |||
Each Inside Router generates a Level 2 LSP, and the Level 2 LSPs for | Each Inside Router generates a Level 2 LSP and the Level 2 LSPs for | |||
the Inside Edge Routers will include adjacencies to Outside Edge | the Inside Edge Routers will include adjacencies to Outside Edge | |||
Routers. Unlike normal Level 2 operations, these LSPs are not | Routers. Unlike normal Level 2 operations, these LSPs are not | |||
advertised outside of the Inside Area and MUST be filtered by all | advertised outside of the Inside Area and MUST be filtered by all | |||
Inside Edge Routers to not be flooded to Outside Routers. Only the | Inside Edge Routers to not be flooded to Outside Routers. Only the | |||
Proxy LSP is injected into the overall Level 2 LSDB. | Proxy LSP is injected into the overall Level 2 LSDB. | |||
The Area Leader uses the Level 2 LSPs generated by the Inside Edge | The Area Leader uses the Level 2 LSPs generated by the Inside Edge | |||
Routers to generate the Proxy LSP. This LSP is originated using the | Routers to generate the Proxy LSP. This LSP is originated using the | |||
Area Proxy System Identifier. The Area Leader can also insert the | Area Proxy System Identifier. The Area Leader can also insert the | |||
following additional TLVs into the Proxy LSP for additional | following additional TLVs into the Proxy LSP for additional | |||
skipping to change at page 11, line 44 ¶ | skipping to change at line 506 ¶ | |||
4.4.2. The Area Address TLV | 4.4.2. The Area Address TLV | |||
The Area Leader SHOULD insert an Area Addresses TLV (1) [ISO10589] | The Area Leader SHOULD insert an Area Addresses TLV (1) [ISO10589] | |||
into the Proxy LSP. | into the Proxy LSP. | |||
4.4.3. The Dynamic Hostname TLV | 4.4.3. The Dynamic Hostname TLV | |||
It is RECOMMENDED that the Area Leader insert the Dynamic Hostname | It is RECOMMENDED that the Area Leader insert the Dynamic Hostname | |||
TLV (137) [RFC5301] into the Proxy LSP. The contents of the hostname | TLV (137) [RFC5301] into the Proxy LSP. The contents of the hostname | |||
may be specified by configuration. The presence of the hostname | may be specified by configuration. The presence of the hostname | |||
helps to simplify debugging the network. | helps to simplify network debugging. | |||
4.4.4. The IS Neighbors TLV | 4.4.4. The IS Neighbors TLV | |||
The Area Leader can insert the IS Neighbors TLV (2) [ISO10589] into | The Area Leader can insert the IS Neighbors TLV (2) [ISO10589] into | |||
the Proxy LSP for Outside Edge Routers. The Area Leader learns of | the Proxy LSP for Outside Edge Routers. The Area Leader learns of | |||
the Outside Edge Routers by examining the LSPs generated by the | the Outside Edge Routers by examining the LSPs generated by the | |||
Inside Edge Routers copying any IS Neighbors TLVs referring to | Inside Edge Routers copying any IS Neighbors TLVs referring to | |||
Outside Edge Routers into the Proxy LSP. Since the Outside Edge | Outside Edge Routers into the Proxy LSP. Since the Outside Edge | |||
Routers advertise an adjacency to the Area Proxy System Identifier, | Routers advertise an adjacency to the Area Proxy System Identifier, | |||
this will result in a bi-directional adjacency. | this will result in a bidirectional adjacency. | |||
An entry for a neighbor in both the IS Neighbors TLV and the Extended | An entry for a neighbor in both the IS Neighbors TLV and the Extended | |||
IS Neighbors would be functionally redundant, so the Area Leader | IS Neighbors TLV would be functionally redundant, so the Area Leader | |||
SHOULD NOT do this. The Area Leader MAY omit either the IS Neighbors | SHOULD NOT do this. The Area Leader MAY omit either the IS Neighbors | |||
TLV or the Extended IS Neighbors TLV, but it MUST include at least | TLV or the Extended IS Neighbors TLV, but it MUST include at least | |||
one of them. | one of them. | |||
4.4.5. The Extended IS Neighbors TLV | 4.4.5. The Extended IS Neighbors TLV | |||
The Area Leader can insert the Extended IS Reachability TLV (22) | The Area Leader can insert the Extended IS Reachability TLV (22) | |||
[RFC5305] into the Proxy LSP. The Area Leader SHOULD copy each | [RFC5305] into the Proxy LSP. The Area Leader SHOULD copy each | |||
Extended IS Reachability TLV advertised by an Inside Edge Router | Extended IS Reachability TLV advertised by an Inside Edge Router | |||
about an Outside Edge Router into the Proxy LSP. | about an Outside Edge Router into the Proxy LSP. | |||
If the Inside Area supports Segment Routing and Segment Routing | If the Inside Area supports Segment Routing, and Segment Routing | |||
selects a SID where the L-Flag is unset, then the Area Lead SHOULD | selects a SID where the L-Flag is not set, then the Area Lead SHOULD | |||
include an Adjacency Segment Identifier sub-TLV (31) [RFC8667] using | include an Adjacency Segment Identifier sub-TLV (31) [RFC8667] using | |||
the selected SID. | the selected SID. | |||
If the inside area supports SRv6, the Area Leader SHOULD copy the | If the inside area supports SRv6, the Area Leader SHOULD copy the | |||
"SRv6 End.X SID" and "SRv6 LAN End.X SID" sub-TLVs of the extended IS | "SRv6 End.X SID" and "SRv6 LAN End.X SID" sub-TLVs of the Extended IS | |||
reachability TLVs advertised by Inside Edge Routers about Outside | Reachability TLVs advertised by Inside Edge Routers about Outside | |||
Edge Routers. | Edge Routers. | |||
If the inside area supports Traffic Engineering (TE), the Area Leader | If the inside area supports Traffic Engineering (TE), the Area Leader | |||
SHOULD copy TE-related sub-TLVs [RFC5305] Section 3 to each Extended | SHOULD copy TE-related sub-TLVs ([RFC5305], Section 3) to each | |||
IS Reachability TLV in the Proxy LSP. | Extended IS Reachability TLV in the Proxy LSP. | |||
4.4.6. The MT Intermediate Systems TLV | 4.4.6. The MT Intermediate Systems TLV | |||
If the Inside Area supports Multi-Topology, then the Area Leader | If the Inside Area supports Multi-Topology (MT), then the Area Leader | |||
SHOULD copy each Outside Edge Router advertisement that is advertised | SHOULD copy each Outside Edge Router advertisement that is advertised | |||
by an Inside Edge Router in an MT Intermediate Systems TLV into the | by an Inside Edge Router in an MT Intermediate Systems TLV into the | |||
Proxy LSP. | Proxy LSP. | |||
4.4.7. Reachability TLVs | 4.4.7. Reachability TLVs | |||
The Area Leader SHOULD insert additional TLVs describing any routing | The Area Leader SHOULD insert additional TLVs describing any routing | |||
prefixes that should be advertised on behalf of the area. These | prefixes that should be advertised on behalf of the area. These | |||
prefixes may be learned from the Level 1 LSDB, Level 2 LSDB, or | prefixes may be learned from the Level 1 LSDB, Level 2 LSDB, or | |||
redistributed from another routing protocol. This applies to all of | redistributed from another routing protocol. This applies to all of | |||
the various types of TLVs used for prefix advertisement: | the various types of TLVs used for prefix advertisement: | |||
IP Internal Reachability Information TLV (128) [RFC1195] | * IP Internal Reachability Information TLV (128) [RFC1195] | |||
IP External Reachability Information TLV (130) [RFC1195] | * IP External Reachability Information TLV (130) [RFC1195] | |||
Extended IP Reachability TLV (135) [RFC5305] | * Extended IP Reachability TLV (135) [RFC5305] | |||
IPv6 Reachability TLV (236) [RFC5308] | * IPv6 Reachability TLV (236) [RFC5308] | |||
Multi-Topology Reachable IPv4 Prefixes TLV (235) [RFC5120] | * Multi-Topology Reachable IPv4 Prefixes TLV (235) [RFC5120] | |||
Multi-Topology Reachable IPv6 Prefixes TLV (237) [RFC5120] | * Multi-Topology Reachable IPv6 Prefixes TLV (237) [RFC5120] | |||
For TLVs in the Level 1 LSDB, for a given TLV type and prefix, the | For TLVs in the Level 1 LSDB, for a given TLV type and prefix, the | |||
Area Leader SHOULD select the TLV with the lowest metric and copy | Area Leader SHOULD select the TLV with the lowest metric and copy | |||
that TLV into the Proxy LSP. | that TLV into the Proxy LSP. | |||
When examining the Level 2 LSDB for this function, the Area Leader | When examining the Level 2 LSDB for this function, the Area Leader | |||
SHOULD only consider TLVs advertised by Inside Routers. Further, for | SHOULD only consider TLVs advertised by Inside Routers. Further, for | |||
prefixes that represent Boundary links, the Area Leader SHOULD copy | prefixes that represent Boundary links, the Area Leader SHOULD copy | |||
all TLVs that have unique sub-TLV contents. | all TLVs that have unique sub-TLV contents. | |||
If the Inside Area supports Segment Routing and the selected TLV | If the Inside Area supports SR and the selected TLV includes a Prefix | |||
includes a Prefix Segment Identifier sub-TLV (3) [RFC8667], then the | Segment Identifier sub-TLV (3) [RFC8667], then the sub-TLV SHOULD be | |||
sub-TLV SHOULD be copied as well. The P-Flag SHOULD be set in the | copied as well. The P-Flag SHOULD be set in the copy of the sub-TLV | |||
copy of the sub-TLV to indicate that penultimate hop popping should | to indicate that penultimate hop popping should not be performed for | |||
not be performed for this prefix. The E-Flag SHOULD be reset in the | this prefix. The E-Flag SHOULD be reset in the copy of the sub-TLV | |||
copy of the sub-TLV to indicate that an explicit NULL is not | to indicate that an explicit NULL is not required. The R-Flag SHOULD | |||
required. The R-Flag SHOULD simply be copied. | simply be copied. | |||
4.4.8. The Router Capability TLV | 4.4.8. The Router Capability TLV | |||
The Area Leader MAY insert the Router Capability TLV (242) [RFC7981] | The Area Leader MAY insert the Router Capability TLV (242) [RFC7981] | |||
into the Proxy LSP. If Segment Routing is supported by the inside | into the Proxy LSP. If SR is supported by the inside area, as | |||
area, as indicated by the presence of an SRGB being advertised by all | indicated by the presence of an SRGB being advertised by all Inside | |||
Inside Nodes, then the Area Leader SHOULD advertise an SR- | Nodes, then the Area Leader SHOULD advertise an SR-Capabilities sub- | |||
Capabilities sub-TLV (2) [RFC8667] with an SRGB. The first value of | TLV (2) [RFC8667] with an SRGB. The first value of the SRGB is the | |||
the SRGB is the same as the first value advertised by all Inside | same as the first value advertised by all Inside Nodes. The range | |||
Nodes. The range advertised for the area will be the minimum of all | advertised for the area will be the minimum of all ranges advertised | |||
ranges advertised by Inside Nodes. The Area Leader SHOULD use its | by Inside Nodes. The Area Leader SHOULD use its Router ID in the | |||
Router ID in the Router Capability TLV. | Router Capability TLV. | |||
If SRv6 Capability sub-TLV [RFC7981] is advertised by all Inside | If SRv6 Capability sub-TLV [RFC7981] is advertised by all Inside | |||
Routers, the Area Leader should insert an SRv6 Capability sub-TLV in | Routers, the Area Leader should insert an SRv6 Capability sub-TLV in | |||
the Router Capability TLV. Each flag in the SRv6 Capability sub-TLV | the Router Capability TLV. Each flag in the SRv6 Capability sub-TLV | |||
should be set if the flag is set by all Inside Routers. | should be set if the flag is set by all Inside Routers. | |||
If the Node Maximum SID Depth (MSD) sub-TLV [RFC8491] is advertised | If the Node Maximum SID Depth (MSD) sub-TLV [RFC8491] is advertised | |||
by all Inside Routers, the Area Leader should advertise the | by all Inside Routers, the Area Leader should advertise the | |||
intersection of the advertised MSD types and the smallest supported | intersection of the advertised MSD types and the smallest supported | |||
MSD values for each type. | MSD values for each type. | |||
4.4.9. The Multi-Topology TLV | 4.4.9. The Multi-Topology TLV | |||
If the Inside Area supports multi-topology, then the Area Leader | If the Inside Area supports multi-topology, then the Area Leader | |||
SHOULD insert the Multi-Topology TLV (229) [RFC5120], including the | SHOULD insert the Multi-Topology TLV (229) [RFC5120], including the | |||
topologies supported by the Inside Nodes. | topologies supported by the Inside Nodes. | |||
If any Inside Node is advertising the 'O' (Overload) bit for a given | If any Inside Node is advertising the O (Overload) bit for a given | |||
topology, then the Area Leader MUST advertise the 'O' bit for that | topology, then the Area Leader MUST advertise the O bit for that | |||
topology. If any Inside Node is advertising the 'A' (Attach) bit for | topology. If any Inside Node is advertising the A (Attach) bit for a | |||
a given topology, then the Area Leader MUST advertise the 'A' bit for | given topology, then the Area Leader MUST advertise the A bit for | |||
that topology. | that topology. | |||
4.4.10. The SID/Label Binding and The Multi-Topology SID/Label Binding | 4.4.10. The SID/Label Binding and the Multi-Topology SID/Label Binding | |||
SID TLV | TLV | |||
If an Inside Node advertises the SID/Label Binding or Multi-Topology | If an Inside Node advertises the SID/Label Binding or Multi-Topology | |||
SID/Label Binding SID TLV [RFC8667], then the Area Leader MAY copy | SID/Label Binding TLV [RFC8667], then the Area Leader MAY copy the | |||
the TLV to the Proxy LSP. | TLV to the Proxy LSP. | |||
4.4.11. The SRv6 Locator TLV | 4.4.11. The SRv6 Locator TLV | |||
If the inside area supports SRv6, the Area Leader SHOULD copy all | If the inside area supports SRv6, the Area Leader SHOULD copy all | |||
SRv6 locator TLVs [RFC9352] advertised by Inside Routers to the Proxy | SRv6 locator TLVs [RFC9352] advertised by Inside Routers to the Proxy | |||
LSP. | LSP. | |||
4.4.12. Traffic Engineering Information | 4.4.12. Traffic Engineering Information | |||
If the inside area supports TE, the Area Leader SHOULD advertise a TE | If the inside area supports TE, the Area Leader SHOULD advertise a TE | |||
skipping to change at page 15, line 7 ¶ | skipping to change at line 650 ¶ | |||
Shared Risk Link Group (SRLS) TLVs (138) [RFC5307] advertised by | Shared Risk Link Group (SRLS) TLVs (138) [RFC5307] advertised by | |||
Inside Edge Routers about links to Outside Edge Routers. | Inside Edge Routers about links to Outside Edge Routers. | |||
If the inside area supports IPv6 TE, the Area Leader SHOULD advertise | If the inside area supports IPv6 TE, the Area Leader SHOULD advertise | |||
an IPv6 TE Router ID TLV (140) [RFC6119] in the Proxy LSP. It SHOULD | an IPv6 TE Router ID TLV (140) [RFC6119] in the Proxy LSP. It SHOULD | |||
also copy the IPv6 SRLG TLVs (139) [RFC6119] advertised by Inside | also copy the IPv6 SRLG TLVs (139) [RFC6119] advertised by Inside | |||
Edge Routers about links to Outside Edge Routers. | Edge Routers about links to Outside Edge Routers. | |||
4.4.13. The Area SID | 4.4.13. The Area SID | |||
When SR is enabled, it may be useful to advertise an Area SID which | When SR is enabled, it may be useful to advertise an Area SID that | |||
will direct traffic to any of the Inside Edge Routers. The | will direct traffic to any of the Inside Edge Routers. The | |||
information for the Area SID is distributed to all Inside Edge | information for the Area SID is distributed to all Inside Edge | |||
Routers using the Area SID sub-TLV (Section 4.3.2) by the Area | Routers using the Area SID sub-TLV (Section 4.3.2) by the Area | |||
Leader. | Leader. | |||
The Area Leader SHOULD advertise the Area SID information in the | The Area Leader SHOULD advertise the Area SID information in the | |||
Proxy LSP as a Node SID as defined in [RFC8667] Section 2.1. The | Proxy LSP as a Node SID as defined in [RFC8667], Section 2.1. The | |||
advertisement in the Proxy LSP informs the Outside Area that packets | advertisement in the Proxy LSP informs the Outside Area that packets | |||
directed to the SID will be forwarded to one of the Inside Edge Nodes | directed to the SID will be forwarded to one of the Inside Edge Nodes | |||
and the Area SID will be consumed. | and the Area SID will be consumed. | |||
Other uses of the Area SID and area SID prefix are outside the scope | Other uses of the Area SID and Area SID prefix are outside the scope | |||
of this document. Documents which define other use cases for the | of this document. Documents that define other use cases for the Area | |||
Area SID MUST specify whether the SID value should be the same or | SID MUST specify whether the SID value should be the same or | |||
different from that used in support of Area Proxy. | different from that used in support of Area Proxy. | |||
5. Inside Edge Router Functions | 5. Inside Edge Router Functions | |||
The Inside Edge Router has two additional and important functions. | The Inside Edge Router has two additional and important functions. | |||
First, it MUST generate IIHs that appear to have come from the Area | First, it MUST generate IIHs that appear to have come from the Area | |||
Proxy System Identifier. Second, it MUST filter the L2 LSPs, Partial | Proxy System Identifier. Second, it MUST filter the L2 LSPs, Partial | |||
Sequence Number PDUs (PSNPs), and Complete Sequence Number PDUs | Sequence Number PDUs (PSNPs), and Complete Sequence Number PDUs | |||
(CSNPs) that are being advertised to Outside Routers. | (CSNPs) that are being advertised to Outside Routers. | |||
skipping to change at page 16, line 5 ¶ | skipping to change at line 692 ¶ | |||
once it has learned the Area Proxy System ID, it MUST generate its | once it has learned the Area Proxy System ID, it MUST generate its | |||
IIHs on the circuit using the Proxy System ID as the source of the | IIHs on the circuit using the Proxy System ID as the source of the | |||
IIH. | IIH. | |||
Using the Proxy System ID causes the Outside Router to advertise an | Using the Proxy System ID causes the Outside Router to advertise an | |||
adjacency to the Proxy System ID, not to the Inside Edge Router, | adjacency to the Proxy System ID, not to the Inside Edge Router, | |||
which supports the proxy function. The normal system ID of the | which supports the proxy function. The normal system ID of the | |||
Inside Edge Router MUST NOT be used as it will cause unnecessary | Inside Edge Router MUST NOT be used as it will cause unnecessary | |||
adjacencies to form. | adjacencies to form. | |||
5.2. Filtering LSP information | 5.2. Filtering LSP Information | |||
For the area proxy abstraction to be effective the L2 LSPs generated | For the area proxy abstraction to be effective the L2 LSPs generated | |||
by the Inside Routers MUST be restricted to the Inside Area. The | by the Inside Routers MUST be restricted to the Inside Area. The | |||
Inside Routers know which system IDs are members of the Inside Area | Inside Routers know which system IDs are members of the Inside Area | |||
based on the advertisement of the Area Proxy TLV. To prevent | based on the advertisement of the Area Proxy TLV. To prevent | |||
unwanted LSP information from escaping the Inside Area, the Inside | unwanted LSP information from escaping the Inside Area, the Inside | |||
Edge Router MUST perform filtering of LSP flooding, CSNPs, and PSNPs. | Edge Router MUST perform filtering of LSP flooding, CSNPs, and PSNPs. | |||
Specifically: | Specifically: | |||
A Level 2 LSP with a source system identifier that is found in the | * A Level 2 LSP with a source system identifier that is found in the | |||
Level 1 LSDB MUST NOT be flooded to an Outside Router. | Level 1 LSDB MUST NOT be flooded to an Outside Router. | |||
A Level 2 LSP that contains the Area Proxy TLV MUST NOT be flooded | * A Level 2 LSP that contains the Area Proxy TLV MUST NOT be flooded | |||
to an Outside Router. | to an Outside Router. | |||
A Level 2 CSNP sent to an Outside Router MUST NOT contain any | * A Level 2 CSNP sent to an Outside Router MUST NOT contain any | |||
information about an LSP with a system identifier found in the | information about an LSP with a system identifier found in the | |||
Level 1 LSDB. If an Inside Edge Router filters a CSNP and there | Level 1 LSDB. If an Inside Edge Router filters a CSNP and there | |||
is no remaining content, then the CSNP MUST NOT be sent. The | is no remaining content, then the CSNP MUST NOT be sent. The | |||
source address of the CSNP MUST be the Area Proxy System ID. | source address of the CSNP MUST be the Area Proxy System ID. | |||
A Level 2 PSNP sent to an Outside Router MUST NOT contain any | * A Level 2 PSNP sent to an Outside Router MUST NOT contain any | |||
information about an LSP with a system identifier found in the | information about an LSP with a system identifier found in the | |||
Level 1 LSDB. If an Inside Edge Router filters a PSNP and there | Level 1 LSDB. If an Inside Edge Router filters a PSNP and there | |||
is no remaining content, then the PSNP MUST NOT be sent. The | is no remaining content, then the PSNP MUST NOT be sent. The | |||
source address of the PSNP MUST be the Area Proxy System ID. | source address of the PSNP MUST be the Area Proxy System ID. | |||
6. Acknowledgments | 6. IANA Considerations | |||
The authors would like to thank Bruno Decraene and Gunter Van De | ||||
Velde for their many helpful comments. The authors would also like | ||||
to thank a small group that wishes to remain anonymous for their | ||||
valuable contributions. | ||||
7. IANA Considerations | ||||
This memo requests that IANA allocate and assign code point 20 from | ||||
the IS-IS TLV Codepoints registry for the Area Proxy TLV. The | ||||
registry fields should be: IIH:n, LSP:y, SNP:n, Purge:n. | ||||
In association with this, this memo requests that IANA create a | ||||
registry for code points for the sub-TLVs of the Area Proxy TLV. | ||||
Name of the registry: Sub-TLVs for TLV 20 (Area Proxy TLV) | ||||
Required information for registrations: Temporary registrations | ||||
may be made under the Early IANA Allocation of Standards Track | ||||
Code Points policy. [RFC7120] Permanent registrations require the | ||||
publication of an RFC describing the usage of the code point. | ||||
Applicable registration policy: RFC Required and Expert Review. | IANA has assigned code point 20 from the "IS-IS TLV Codepoints" | |||
registry for the Area Proxy TLV. The registry fields are IIH:n, | ||||
LSP:y, SNP:n, and Purge:n. | ||||
Size, format, and syntax of registry entries: Value (0-255), Name, | In association with this, IANA has created a "IS-IS Sub-TLVs for the | |||
and Reference | Area Proxy TLV" registry. Temporary registrations may be made via | |||
early allocation [RFC7120]. | ||||
Initial assignments and reservations: IANA is requested to assign | The registration procedure is Expert Review [RFC8126]. The values | |||
the following code points: | are from 0-255, and the fields are Value, Name, and Reference. The | |||
initial assignments are as follows. | ||||
+=======+==============================+===============+ | +=======+==============================+===========+ | |||
| Value | Name | Reference | | | Value | Name | Reference | | |||
+=======+==============================+===============+ | +=======+==============================+===========+ | |||
| 1 | Area Proxy System Identifier | This document | | | 1 | Area Proxy System Identifier | RFC 9666 | | |||
+-------+------------------------------+---------------+ | +-------+------------------------------+-----------+ | |||
| 2 | Area SID | This document | | | 2 | Area SID | RFC 9666 | | |||
+-------+------------------------------+---------------+ | +-------+------------------------------+-----------+ | |||
Table 1 | Table 1 | |||
8. Security Considerations | 7. Security Considerations | |||
This document introduces no new security issues. Security of routing | This document introduces no new security issues. Security of routing | |||
within a domain is already addressed as part of the routing protocols | within a domain is already addressed as part of the routing protocols | |||
themselves. This document proposes no changes to those security | themselves. This document proposes no changes to those security | |||
architectures. Security for IS-IS is provided by [RFC5304] and | architectures. Security for IS-IS is provided by "IS-IS | |||
[RFC5310]. | Cryptographic Authentication" [RFC5304] and "IS-IS Generic | |||
Cryptographic Authentication" [RFC5310]. | ||||
9. References | ||||
9.1. Normative References | 8. References | |||
[I-D.ietf-lsr-dynamic-flooding] | 8.1. Normative References | |||
Li, T., Psenak, P., Chen, H., Jalil, L., and S. Dontula, | ||||
"Dynamic Flooding on Dense Graphs", Work in Progress, | ||||
Internet-Draft, draft-ietf-lsr-dynamic-flooding-14, 8 June | ||||
2023, <https://datatracker.ietf.org/doc/html/draft-ietf- | ||||
lsr-dynamic-flooding-14>. | ||||
[ISO10589] ISO, "Intermediate System to Intermediate System Intra- | [ISO10589] ISO, "Information technology — Telecommunications and | |||
Domain Routing Exchange Protocol for use in Conjunction | information exchange between systems — Intermediate System | |||
with the Protocol for Providing the Connectionless-mode | to Intermediate System intra-domain routeing information | |||
Network Service (ISO 8473)", ISO/IEC 10589:2002, October | exchange protocol for use in conjunction with the protocol | |||
2002. | for providing the connectionless-mode network service (ISO | |||
8473)", Second Edition, ISO/IEC 10589:2002, November 2002. | ||||
[RFC1195] Callon, R., "Use of OSI IS-IS for routing in TCP/IP and | [RFC1195] Callon, R., "Use of OSI IS-IS for routing in TCP/IP and | |||
dual environments", RFC 1195, DOI 10.17487/RFC1195, | dual environments", RFC 1195, DOI 10.17487/RFC1195, | |||
December 1990, <https://www.rfc-editor.org/info/rfc1195>. | December 1990, <https://www.rfc-editor.org/info/rfc1195>. | |||
[RFC2119] Bradner, S., "Key words for use in RFCs to Indicate | [RFC2119] Bradner, S., "Key words for use in RFCs to Indicate | |||
Requirement Levels", BCP 14, RFC 2119, | Requirement Levels", BCP 14, RFC 2119, | |||
DOI 10.17487/RFC2119, March 1997, | DOI 10.17487/RFC2119, March 1997, | |||
<https://www.rfc-editor.org/info/rfc2119>. | <https://www.rfc-editor.org/info/rfc2119>. | |||
skipping to change at page 19, line 35 ¶ | skipping to change at line 839 ¶ | |||
Bashandy, A., Gredler, H., and B. Decraene, "IS-IS | Bashandy, A., Gredler, H., and B. Decraene, "IS-IS | |||
Extensions for Segment Routing", RFC 8667, | Extensions for Segment Routing", RFC 8667, | |||
DOI 10.17487/RFC8667, December 2019, | DOI 10.17487/RFC8667, December 2019, | |||
<https://www.rfc-editor.org/info/rfc8667>. | <https://www.rfc-editor.org/info/rfc8667>. | |||
[RFC9352] Psenak, P., Ed., Filsfils, C., Bashandy, A., Decraene, B., | [RFC9352] Psenak, P., Ed., Filsfils, C., Bashandy, A., Decraene, B., | |||
and Z. Hu, "IS-IS Extensions to Support Segment Routing | and Z. Hu, "IS-IS Extensions to Support Segment Routing | |||
over the IPv6 Data Plane", RFC 9352, DOI 10.17487/RFC9352, | over the IPv6 Data Plane", RFC 9352, DOI 10.17487/RFC9352, | |||
February 2023, <https://www.rfc-editor.org/info/rfc9352>. | February 2023, <https://www.rfc-editor.org/info/rfc9352>. | |||
9.2. Informative References | [RFC9667] Li, T., Ed., Psenak, P., Ed., Chen, H., Jalil, L., and S. | |||
Dontula, "Dynamic Flooding on Dense Graphs", RFC 9667, | ||||
DOI 10.17487/RFC9667, October 2024, | ||||
<https://www.rfc-editor.org/info/rfc9667>. | ||||
[Clos] Clos, C., "A Study of Non-Blocking Switching Networks", | 8.2. Informative References | |||
The Bell System Technical Journal Vol. 32(2), DOI | ||||
10.1002/j.1538-7305.1953.tb01433.x, March 1953, | [Clos] Clos, C., "A study of non-blocking switching networks", | |||
<http://dx.doi.org/10.1002/j.1538-7305.1953.tb01433.x>. | The Bell System Technical Journal, Volume 32, Issue 2, pp. | |||
406-424, DOI 10.1002/j.1538-7305.1953.tb01433.x, March | ||||
1953, | ||||
<https://doi.org/10.1002/j.1538-7305.1953.tb01433.x>. | ||||
[RFC7120] Cotton, M., "Early IANA Allocation of Standards Track Code | [RFC7120] Cotton, M., "Early IANA Allocation of Standards Track Code | |||
Points", BCP 100, RFC 7120, DOI 10.17487/RFC7120, January | Points", BCP 100, RFC 7120, DOI 10.17487/RFC7120, January | |||
2014, <https://www.rfc-editor.org/info/rfc7120>. | 2014, <https://www.rfc-editor.org/info/rfc7120>. | |||
[RFC8126] Cotton, M., Leiba, B., and T. Narten, "Guidelines for | ||||
Writing an IANA Considerations Section in RFCs", BCP 26, | ||||
RFC 8126, DOI 10.17487/RFC8126, June 2017, | ||||
<https://www.rfc-editor.org/info/rfc8126>. | ||||
Acknowledgements | ||||
The authors would like to thank Bruno Decraene and Gunter Van De | ||||
Velde for their many helpful comments. The authors would also like | ||||
to thank a small group that wishes to remain anonymous for their | ||||
valuable contributions. | ||||
Authors' Addresses | Authors' Addresses | |||
Tony Li | Tony Li | |||
Juniper Networks | Juniper Networks | |||
1133 Innovation Way | 1133 Innovation Way | |||
Sunnyvale, California 94089 | Sunnyvale, CA 94089 | |||
United States of America | United States of America | |||
Email: tony.li@tony.li | Email: tony.li@tony.li | |||
Sarah Chen | Sarah Chen | |||
Arista Networks | Arista Networks | |||
5453 Great America Parkway | 5453 Great America Parkway | |||
Santa Clara, California 95054 | Santa Clara, CA 95054 | |||
United States of America | United States of America | |||
Email: sarahchen@arista.com | Email: sarahchen@arista.com | |||
Vivek Ilangovan | Vivek Ilangovan | |||
Arista Networks | Arista Networks | |||
5453 Great America Parkway | 5453 Great America Parkway | |||
Santa Clara, California 95054 | Santa Clara, CA 95054 | |||
United States of America | United States of America | |||
Email: ilangovan@arista.com | Email: ilangovan@arista.com | |||
Gyan S. Mishra | Gyan S. Mishra | |||
Verizon Inc. | Verizon Inc. | |||
13101 Columbia Pike | 13101 Columbia Pike | |||
Silver Spring, MD 20904 | Silver Spring, MD 20904 | |||
United States of America | United States of America | |||
Phone: 301 502-1347 | Phone: 301 502-1347 | |||
Email: gyan.s.mishra@verizon.com | Email: gyan.s.mishra@verizon.com | |||
End of changes. 114 change blocks. | ||||
339 lines changed or deleted | 332 lines changed or added | |||
This html diff was produced by rfcdiff 1.48. |