| < draft-ietf-isis-segment-routing-msd-00.txt | draft-ietf-isis-segment-routing-msd-01.txt > | |||
|---|---|---|---|---|
| IS-IS Working Group J. Tantsura | IS-IS Working Group J. Tantsura | |||
| Internet-Draft U. Chunduri | Internet-Draft Individual | |||
| Intended status: Standards Track Individual | Intended status: Standards Track U. Chunduri | |||
| Expires: May 20, 2017 November 16, 2016 | Expires: September 2, 2017 Huawei | |||
| S. Aldrin | ||||
| Google, Inc | ||||
| L. Ginsberg | ||||
| Cisco Systems | ||||
| March 1, 2017 | ||||
| Signaling MSD (Maximum SID Depth) using IS-IS | Signaling MSD (Maximum SID Depth) using IS-IS | |||
| draft-ietf-isis-segment-routing-msd-00 | draft-ietf-isis-segment-routing-msd-01 | |||
| Abstract | Abstract | |||
| This document proposes a way to expose Maximum SID Depth (MSD) | This document proposes a way to signal Maximum SID Depth (MSD) | |||
| supported by a node at node and/or link level by an ISIS Router. In | supported by a node at node and/or link granularity by an ISIS | |||
| a Segment Routing (SR) enabled network a centralized controller that | Router. In a Segment Routing (SR) enabled network a centralized | |||
| programs SR tunnels at the head-end node needs to know the MSD | controller that programs SR tunnels needs to know the MSD supported | |||
| information at node level and/or link level to push the label stack | by the head-end at node and/or link granularity to push the SID stack | |||
| of an appropriate depth. | of an appropriate depth. MSD is relevent to the head-end of a SR | |||
| tunnel or Binding-SID anchor node where Binding-SID expansions migth | ||||
| result in creation of a new SID stack. | ||||
| Status of This Memo | Status of This Memo | |||
| This Internet-Draft is submitted in full conformance with the | This Internet-Draft is submitted in full conformance with the | |||
| provisions of BCP 78 and BCP 79. | provisions of BCP 78 and BCP 79. | |||
| Internet-Drafts are working documents of the Internet Engineering | Internet-Drafts are working documents of the Internet Engineering | |||
| Task Force (IETF). Note that other groups may also distribute | Task Force (IETF). Note that other groups may also distribute | |||
| working documents as Internet-Drafts. The list of current Internet- | working documents as Internet-Drafts. The list of current Internet- | |||
| Drafts is at http://datatracker.ietf.org/drafts/current/. | Drafts is at http://datatracker.ietf.org/drafts/current/. | |||
| Internet-Drafts are draft documents valid for a maximum of six months | Internet-Drafts are draft documents valid for a maximum of six months | |||
| and may be updated, replaced, or obsoleted by other documents at any | and may be updated, replaced, or obsoleted by other documents at any | |||
| time. It is inappropriate to use Internet-Drafts as reference | time. It is inappropriate to use Internet-Drafts as reference | |||
| material or to cite them other than as "work in progress." | material or to cite them other than as "work in progress." | |||
| This Internet-Draft will expire on May 20, 2017. | This Internet-Draft will expire on September 2, 2017. | |||
| Copyright Notice | Copyright Notice | |||
| Copyright (c) 2016 IETF Trust and the persons identified as the | Copyright (c) 2017 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 | Provisions Relating to IETF Documents | |||
| (http://trustee.ietf.org/license-info) in effect on the date of | (http://trustee.ietf.org/license-info) in effect on the date of | |||
| publication of this document. Please review these documents | publication of this document. Please review these documents | |||
| carefully, as they describe your rights and restrictions with respect | carefully, as they describe your rights and restrictions with respect | |||
| to this document. Code Components extracted from this document must | to this document. Code Components extracted from this document must | |||
| include Simplified BSD License text as described in Section 4.e of | include Simplified BSD License text as described in Section 4.e of | |||
| the Trust Legal Provisions and are provided without warranty as | the Trust Legal Provisions and are provided without warranty as | |||
| described in the Simplified BSD License. | described in the Simplified BSD License. | |||
| Table of Contents | Table of Contents | |||
| 1. Introduction . . . . . . . . . . . . . . . . . . . . . . . . 2 | 1. Introduction . . . . . . . . . . . . . . . . . . . . . . . . 2 | |||
| 1.1. Conventions used in this document . . . . . . . . . . . . 3 | 1.1. Conventions used in this document . . . . . . . . . . . . 3 | |||
| 1.1.1. Terminology . . . . . . . . . . . . . . . . . . . . . 3 | 1.1.1. Terminology . . . . . . . . . . . . . . . . . . . . . 3 | |||
| 1.2. Requirements Language . . . . . . . . . . . . . . . . . . 3 | 1.2. Requirements Language . . . . . . . . . . . . . . . . . . 3 | |||
| 2. Terminology . . . . . . . . . . . . . . . . . . . . . . . . . 3 | 2. Terminology . . . . . . . . . . . . . . . . . . . . . . . . . 4 | |||
| 3. Node MSD Advertisement . . . . . . . . . . . . . . . . . . . 3 | 3. Node MSD Advertisement . . . . . . . . . . . . . . . . . . . 4 | |||
| 4. LINK MSD Advertisement . . . . . . . . . . . . . . . . . . . 4 | 4. LINK MSD Advertisement . . . . . . . . . . . . . . . . . . . 4 | |||
| 5. Node MSD vs Link MSD conflict resolution . . . . . . . . . . 4 | 5. Node MSD vs Link MSD conflict resolution . . . . . . . . . . 5 | |||
| 6. IANA Considerations . . . . . . . . . . . . . . . . . . . . . 4 | 6. IANA Considerations . . . . . . . . . . . . . . . . . . . . . 5 | |||
| 7. Security Considerations . . . . . . . . . . . . . . . . . . . 4 | 7. Security Considerations . . . . . . . . . . . . . . . . . . . 6 | |||
| 8. Acknowledgements . . . . . . . . . . . . . . . . . . . . . . 4 | 8. Contributors . . . . . . . . . . . . . . . . . . . . . . . . 6 | |||
| 9. References . . . . . . . . . . . . . . . . . . . . . . . . . 4 | 9. Acknowledgements . . . . . . . . . . . . . . . . . . . . . . 6 | |||
| 9.1. Normative References . . . . . . . . . . . . . . . . . . 4 | 10. References . . . . . . . . . . . . . . . . . . . . . . . . . 6 | |||
| 9.2. Informative References . . . . . . . . . . . . . . . . . 5 | 10.1. Normative References . . . . . . . . . . . . . . . . . . 6 | |||
| Authors' Addresses . . . . . . . . . . . . . . . . . . . . . . . 6 | 10.2. Informative References . . . . . . . . . . . . . . . . . 7 | |||
| Authors' Addresses . . . . . . . . . . . . . . . . . . . . . . . 7 | ||||
| 1. Introduction | 1. Introduction | |||
| When Segment Routing tunnels are computed by a centralized | When Segment Routing tunnels are computed by a centralized | |||
| controller, it is crucial that the controller knows the MSD "Maximum | controller, it is critical that the controller learns the MSD | |||
| SID Depth" of the node or link SR tunnel exits over, so it doesn't | "Maximum SID Depth" of the node or link SR tunnel exits over, so the | |||
| download a path with SID (label stack) of a depth more than the node | SID stack depth of a path computed doesn't exceed that the node is | |||
| or link used is capable of imposing. This document describes how to | capable of imposing. This document describes how to use IS-IS to | |||
| use IS-IS to expose the MSD of the node or link to a centralized | signal the MSD of a node or link to a centralized controller. | |||
| controller. | ||||
| PCEP SR extensions [I-D.ietf-pce-segment-routing] has defined MSD, to | PCEP SR extensions draft [I-D.ietf-pce-segment-routing] signals MSD | |||
| signal in SR PCE Capability TLV, METRIC Object. However, If PCEP is | in SR PCE Capability TLV and METRIC Object. However, if PCEP is not | |||
| not supported by a node (head-end of the SR tunnel) and controller | supported/configured on the head-end of a SR tunnel or a Binding-SID | |||
| does not participate in IGP routing it has no way to learn the MSD of | anchor node and controller does not participate in IGP routing, it | |||
| the node or link configured. BGP-LS [RFC7752] defines a way to | has no way to learn the MSD of nodes and links MSD has been | |||
| expose topology and associated different attributes, capabilities of | configured. BGP-LS [RFC7752] defines a way to expose topology and | |||
| the nodes in that topology to a centralized controller and MSD has | associated attributes and capabilities of the nodes in that topology | |||
| been defined in [I-D.tantsura-idr-bgp-ls-segment-routing-msd]. For | to a centralized controller. MSD signaling by BGP-LS has been | |||
| this information to be advertised by BGP for the all nodes and links | defined in [I-D.tantsura-idr-bgp-ls-segment-routing-msd]. Tipicaly, | |||
| of the network, where this is provisioned, IS-IS module should have | BGP-LS is configured on a small number of nodes, that do not | |||
| this information in the LSDB. | necessarily act as head-ends. In order, for BGP-LS to signal MSD for | |||
| the all nodes and links in the network MSD is relevant, MSD | ||||
| capabilites should be distributed to every IS-IS router in the | ||||
| network. | ||||
| [I-D.ietf-isis-mpls-elc] defines, RLSDC which indicates how many | [I-D.ietf-isis-mpls-elc] defines Readable Label Deepth Capability | |||
| labels a node can read to take a decision to insert an Entropy Label | (RLDC) that is used by a head-end to insert Entropy Label (EL) at | |||
| (EL) and is different than how many labels a node can push as defined | appropriate depth, so it coud be read by transit nodes. MSD in | |||
| by MSD in this draft. | contrary signals ability to push SID's stack of a particular depth. | |||
| MSD of type 1 (IANA Registry) is used to signal number of SID a node | ||||
| is capable of imposing, to be used by a path computation element/ | ||||
| controller and is only relevant to the part of the stack created as | ||||
| the result of the computation. In case, there are additional labels | ||||
| (e.g. service) that are to be pushed to the stack - MSD SHOULD be | ||||
| adjusted to reflect that. In the future, new MSD types could be | ||||
| defined to signal additional capabilities: entropy labels, labels | ||||
| that can be pushed thru recirculation, etc. | ||||
| 1.1. Conventions used in this document | 1.1. Conventions used in this document | |||
| 1.1.1. Terminology | 1.1.1. Terminology | |||
| BGP-LS: Distribution of Link-State and TE Information using Border | BGP-LS:Distribution of Link-State and TE Information using Border | |||
| Gateway Protocol | Gateway Protocol | |||
| ISIS: Intermediate System to Intermediate System | ISIS: Intermediate System to Intermediate System | |||
| MSD: Maximum SID Depth | MSD: Maximum SID Depth | |||
| PCC: Path Computation Client | PCC: Path Computation Client | |||
| PCE: Path Computation Element | PCE: Path Computation Element | |||
| skipping to change at page 3, line 39 ¶ | skipping to change at page 4, line 12 ¶ | |||
| "SHOULD", "SHOULD NOT", "RECOMMENDED", "MAY", and "OPTIONAL" in this | "SHOULD", "SHOULD NOT", "RECOMMENDED", "MAY", and "OPTIONAL" in this | |||
| document are to be interpreted as described in RFC 2119 [RFC2119]. | document are to be interpreted as described in RFC 2119 [RFC2119]. | |||
| 2. Terminology | 2. Terminology | |||
| This memo makes use of the terms defined in [RFC4971]. | This memo makes use of the terms defined in [RFC4971]. | |||
| 3. Node MSD Advertisement | 3. Node MSD Advertisement | |||
| A new sub-TLV within the body of IS-IS Router Capability TLV | A new sub-TLV within the body of IS-IS Router Capability TLV | |||
| [RFC4971], called Node MSD sub-TLV is defined to carry the | [RFC4971], Node MSD sub-TLV is defined to carry the provisioned MSD | |||
| provisioned SID depth of the router originating the Router Capability | of the router originating the Router Capability TLV. Node MSD is the | |||
| TLV. Node MSD is the lowest MSD supported by the node and can be | lowest MSD supported by the node and can be provisioned in IS-IS | |||
| provisioned in IS-IS instance. | instance. | |||
| The Type (1 byte) of this sub-TLV is TBD. | 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 | ||||
| Length is 1 bytes, and | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | |||
| | Type | Length | Sub-Type and Value | | ||||
| +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | ||||
| the Value field contains MSD of the router originating the Router | Figure 1: Node MSD Sub-TLV | |||
| Capability TLV. Node MSD is a number in the range of 0-254. 0 | ||||
| represents lack of the ability to push MSD of any depth; any other | ||||
| value represents that of the node. This value SHOULD represent the | ||||
| lowest value supported by node. | ||||
| This TLV is optional. The scope of the advertisement is specific to | The Type (1 byte) of this sub-TLV is TBD (IANA). | |||
| the deployment. | ||||
| Length is variable (minimum of 2, multiple of 2 octets) and | ||||
| represents the total length of value field. | ||||
| Value field consists of a 1 octet sub-type (IANA Registry) and 1 | ||||
| octet value. | ||||
| Sub-Type 1 (IANA Section), MSD and the Value field contains maximum | ||||
| MSD of the router originating the Router Capability TLV. Node | ||||
| Maximum MSD is a number in the range of 0-254. 0 represents lack of | ||||
| the ability to push MSD of any depth; any other value represents that | ||||
| of the node. This value SHOULD represent the lowest value supported | ||||
| by node. | ||||
| Other Sub-types other than defined above are reserved for future | ||||
| extensions. This TLV is optional. The scope of the advertisement is | ||||
| specific to the deployment. | ||||
| 4. LINK MSD Advertisement | 4. LINK MSD Advertisement | |||
| A new sub-TLV called Link MSD sub-TLV is defined to carry the | A new sub-TLV - Link MSD sub-TLV is defined to carry the provisioned | |||
| provisioned SID depth of the interface associated with the link. | MSD of the interface associated with the link. | |||
| The Type (1 byte) of this sub- TLV is TBD. | 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 | ||||
| Length is 1 byte, and | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | |||
| | Type | Length | Sub-Type and Value | | ||||
| +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | ||||
| the Value field contains Link MSD of the router originating the | Figure 2: Link MSD Sub-TLV | |||
| corresponding TLV's 22, 23, 141, 222, and 223. Link MSD is a number | ||||
| in the range of 0-254. 0 represents lack of the ability to push MSD | The Type (1 byte) of this sub-TLV is TBD (IANA). | |||
| of any depth; any other value represents that of the particular link | ||||
| MSD value. | Length is variable and similar to what is defined in Section 3. | |||
| Value field consists of a 1 octet sub-type (IANA Registry) and 1 | ||||
| octet value. | ||||
| Sub-Type 1 (IANA Section), MSD and the Value field contains Link MSD | ||||
| of the router originating the corresponding TLV's 22, 23, 141, 222, | ||||
| and 223. Link MSD is a number in the range of 0-254. 0 represents | ||||
| lack of the ability to push MSD of any depth; any other value | ||||
| represents that of the particular link MSD value. | ||||
| 5. Node MSD vs Link MSD conflict resolution | 5. Node MSD vs Link MSD conflict resolution | |||
| When both Node MSD and Link MSD are present, the value in the Link | When both Node MSD and Link MSD are present, the value in the Link | |||
| MSD MUST be used. | MSD MUST be used. | |||
| 6. IANA Considerations | 6. IANA Considerations | |||
| This document includes a request to IANA to allocate sub-TLV type | This document includes a request to IANA to allocate sub-TLV type | |||
| codes for the new TLV proposed in Section 3 of this document from IS- | codes for the new sub TLV proposed in Section 3 of this document from | |||
| IS Router Capability TLV Registry as defined by [RFC4971]. Also for | IS-IS Router Capability TLV Registry as defined by [RFC4971]. Also | |||
| link MSD, we request IANA to allocate new sub-TLV codes as defined in | for link MSD, we request IANA to allocate new sub-TLV codes as | |||
| Section 4 from Sub-TLVs for TLVs 22, 23, 141, 222 and 223 registry. | defined in Section 4 from Sub-TLVs for TLVs 22, 23, 141, 222 and 223 | |||
| registry. | ||||
| This document also request IANA to create a new Sub-type registry as | ||||
| proposed in Section 3, Section 4. | ||||
| Value Name Reference | ||||
| ----- --------------------- ------------- | ||||
| 0 Reserved This document | ||||
| 1 MSD This document | ||||
| 2-250 Unassigned This document | ||||
| 251-254 Experimental This document | ||||
| 255 Reserved This document | ||||
| Figure 3: MSD Sub-type Codepoints Registry | ||||
| 7. Security Considerations | 7. Security Considerations | |||
| This document describes a mechanism for advertising Segment Routing | This document describes a mechanism to signal Segment Routing MSD | |||
| SID depth supported at node and link level information through IS-IS | supported at node and/or link granularity through IS-IS LSPs and does | |||
| LSPs and does not introduce any new security issues. | not introduce any new security issues. | |||
| 8. Acknowledgements | 8. Contributors | |||
| TBD | The following people contributed to this document: | |||
| 9. References | Peter Psenak | |||
| 9.1. Normative References | Email: ppsenak@cisco.com | |||
| 9. Acknowledgements | ||||
| The authors would like to thank Stephane Litkowski and Bruno Decraene | ||||
| for their reviews and valuable comments. | ||||
| 10. References | ||||
| 10.1. Normative References | ||||
| [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, | |||
| <http://www.rfc-editor.org/info/rfc2119>. | <http://www.rfc-editor.org/info/rfc2119>. | |||
| [RFC4971] Vasseur, JP., Ed., Shen, N., Ed., and R. Aggarwal, Ed., | [RFC4971] Vasseur, JP., Ed., Shen, N., Ed., and R. Aggarwal, Ed., | |||
| "Intermediate System to Intermediate System (IS-IS) | "Intermediate System to Intermediate System (IS-IS) | |||
| Extensions for Advertising Router Information", RFC 4971, | Extensions for Advertising Router Information", RFC 4971, | |||
| DOI 10.17487/RFC4971, July 2007, | DOI 10.17487/RFC4971, July 2007, | |||
| <http://www.rfc-editor.org/info/rfc4971>. | <http://www.rfc-editor.org/info/rfc4971>. | |||
| [RFC5305] Li, T. and H. Smit, "IS-IS Extensions for Traffic | [RFC5305] Li, T. and H. Smit, "IS-IS Extensions for Traffic | |||
| Engineering", RFC 5305, DOI 10.17487/RFC5305, October | Engineering", RFC 5305, DOI 10.17487/RFC5305, October | |||
| 2008, <http://www.rfc-editor.org/info/rfc5305>. | 2008, <http://www.rfc-editor.org/info/rfc5305>. | |||
| 9.2. Informative References | 10.2. Informative References | |||
| [I-D.ietf-isis-mpls-elc] | [I-D.ietf-isis-mpls-elc] | |||
| Xu, X., Kini, S., Sivabalan, S., Filsfils, C., and S. | Xu, X., Kini, S., Sivabalan, S., Filsfils, C., and S. | |||
| Litkowski, "Signaling Entropy Label Capability Using IS- | Litkowski, "Signaling Entropy Label Capability Using IS- | |||
| IS", draft-ietf-isis-mpls-elc-02 (work in progress), | IS", draft-ietf-isis-mpls-elc-02 (work in progress), | |||
| October 2016. | October 2016. | |||
| [I-D.ietf-pce-segment-routing] | [I-D.ietf-pce-segment-routing] | |||
| Sivabalan, S., Medved, J., Filsfils, C., Crabbe, E., | Sivabalan, S., Medved, J., Filsfils, C., Crabbe, E., | |||
| Raszuk, R., Lopez, V., Tantsura, J., Henderickx, W., and | Raszuk, R., Lopez, V., Tantsura, J., Henderickx, W., and | |||
| J. Hardwick, "PCEP Extensions for Segment Routing", draft- | J. Hardwick, "PCEP Extensions for Segment Routing", draft- | |||
| ietf-pce-segment-routing-08 (work in progress), October | ietf-pce-segment-routing-08 (work in progress), October | |||
| 2016. | 2016. | |||
| [I-D.tantsura-idr-bgp-ls-segment-routing-msd] | [I-D.tantsura-idr-bgp-ls-segment-routing-msd] | |||
| Tantsura, J., Mirsky, G., Sivabalan, S., and U. Chunduri, | Tantsura, J., Chunduri, U., Mirsky, G., and S. Sivabalan, | |||
| "Signaling Maximum SID Depth using Border Gateway Protocol | "Signaling Maximum SID Depth using Border Gateway Protocol | |||
| Link-State", draft-tantsura-idr-bgp-ls-segment-routing- | Link-State", draft-tantsura-idr-bgp-ls-segment-routing- | |||
| msd-01 (work in progress), July 2016. | msd-02 (work in progress), January 2017. | |||
| [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, <http://www.rfc-editor.org/info/rfc1195>. | December 1990, <http://www.rfc-editor.org/info/rfc1195>. | |||
| [RFC5120] Przygienda, T., Shen, N., and N. Sheth, "M-ISIS: Multi | [RFC5120] Przygienda, T., Shen, N., and N. Sheth, "M-ISIS: Multi | |||
| Topology (MT) Routing in Intermediate System to | Topology (MT) Routing in Intermediate System to | |||
| Intermediate Systems (IS-ISs)", RFC 5120, | Intermediate Systems (IS-ISs)", RFC 5120, | |||
| DOI 10.17487/RFC5120, February 2008, | DOI 10.17487/RFC5120, February 2008, | |||
| <http://www.rfc-editor.org/info/rfc5120>. | <http://www.rfc-editor.org/info/rfc5120>. | |||
| skipping to change at page 6, line 17 ¶ | skipping to change at page 8, line 4 ¶ | |||
| Traffic Engineering (TE) Information Using BGP", RFC 7752, | Traffic Engineering (TE) Information Using BGP", RFC 7752, | |||
| DOI 10.17487/RFC7752, March 2016, | DOI 10.17487/RFC7752, March 2016, | |||
| <http://www.rfc-editor.org/info/rfc7752>. | <http://www.rfc-editor.org/info/rfc7752>. | |||
| Authors' Addresses | Authors' Addresses | |||
| Jeff Tantsura | Jeff Tantsura | |||
| Individual | Individual | |||
| Email: jefftant.ietf@gmail.com | Email: jefftant.ietf@gmail.com | |||
| Uma Chunduri | Uma Chunduri | |||
| Individual | Huawei | |||
| Email: uma.chunduri@gmail.com | Email: uma.chunduri@huawei.com | |||
| Sam Aldrin | ||||
| Google, Inc | ||||
| Email: aldrin.ietf@gmail.com | ||||
| Les Ginsberg | ||||
| Cisco Systems | ||||
| Email: ginsberg@cisco.com | ||||
| End of changes. 32 change blocks. | ||||
| 82 lines changed or deleted | 150 lines changed or added | |||
This html diff was produced by rfcdiff 1.48. The latest version is available from http://tools.ietf.org/tools/rfcdiff/ | ||||