| rfc9455xml2.original.xml | rfc9455.xml | |||
|---|---|---|---|---|
| <?xml version="1.0" encoding="US-ASCII"?> | <?xml version="1.0" encoding="UTF-8"?> | |||
| <!-- This template is for creating an Internet Draft using xml2rfc, which is | ||||
| available here: http://xml.resource.org. --> | ||||
| <?xml-stylesheet type='text/xsl' href='rfc2629.xslt' ?> | ||||
| <!-- used by XSLT processors --> | ||||
| <!-- For a complete list and description of processing instructions (PIs), | ||||
| please see http://xml.resource.org/authoring/README.html. --> | ||||
| <?rfc strict="yes" ?> | ||||
| <!-- give errors regarding ID-nits and DTD validation --> | ||||
| <!-- control the table of contents (ToC) --> | ||||
| <?rfc toc="yes"?> | ||||
| <!-- generate a ToC --> | ||||
| <?rfc tocdepth="3"?> | ||||
| <!-- the number of levels of subsections in ToC. default: 3 --> | ||||
| <!-- control references --> | ||||
| <?rfc symrefs="yes"?> | ||||
| <!-- use symbolic references tags, i.e, [RFC2119] instead of [1] --> | ||||
| <?rfc sortrefs="yes" ?> | ||||
| <!-- sort the reference entries alphabetically --> | ||||
| <!-- control vertical white space (using these PIs as follows is recommended by | ||||
| the RFC Editor) --> | ||||
| <?rfc compact="yes" ?> | ||||
| <!-- do not start each main section on a new page --> | ||||
| <?rfc subcompact="no" ?> | ||||
| <!-- keep one blank line between list items --> | ||||
| <!-- end of list of popular I-D processing instructions --> | ||||
| <rfc category="bcp" docName="draft-ietf-sidrops-roa-considerations-08" | ||||
| ipr="trust200902"> | ||||
| <front> | ||||
| <title abbrev="ROA considerations">Avoidance of ROA Containing Multiple I | ||||
| P | ||||
| Prefixes</title> | ||||
| <author fullname="Zhiwei Yan" initials="Z." surname="Yan"> | ||||
| <organization>CNNIC</organization> | ||||
| <address> | ||||
| <postal> | ||||
| <street>No.4 South 4th Street, Zhongguancun</street> | ||||
| <city>Beijing, 100190</city> | ||||
| <country>P.R. China</country> | ||||
| </postal> | ||||
| <email>yanzhiwei@cnnic.cn</email> | ||||
| </address> | ||||
| </author> | ||||
| <author fullname="Randy Bush" initials="R." surname="Bush"> | ||||
| <organization>IIJ Research Lab & Arrcus, Inc.</organization> | ||||
| <address> | ||||
| <postal> | ||||
| <street>5147 Crystal Springs</street> | ||||
| <city>Bainbridge Island</city> | ||||
| <region>Washington</region> | ||||
| <code>98110</code> | ||||
| <country>United States of America</country> | ||||
| </postal> | ||||
| <email>randy@psg.com</email> | ||||
| </address> | ||||
| </author> | ||||
| <author fullname="Guanggang Geng" initials="G.G." surname="Geng"> | <!DOCTYPE rfc [ | |||
| <organization>Jinan University</organization> | <!ENTITY nbsp " "> | |||
| <address> | <!ENTITY zwsp "​"> | |||
| <postal> | <!ENTITY nbhy "‑"> | |||
| <street>No.601, West Huangpu Avenue</street> | <!ENTITY wj "⁠"> | |||
| <code>510632</code> | ]> | |||
| <city>Guangzhou</city> | ||||
| <country>P.R. China</country> | ||||
| </postal> | ||||
| <email>gggeng@jnu.edu.cn</email> | ||||
| </address> | ||||
| </author> | ||||
| <author fullname="Ties de Kock" initials="T." surname="de Kock" > | <rfc xmlns:xi="http://www.w3.org/2001/XInclude" submissionType="IETF" category=" | |||
| <organization>RIPE NCC</organization> | bcp" consensus="true" docName="draft-ietf-sidrops-roa-considerations-08" number= | |||
| <address> | "9455" ipr="trust200902" tocInclude="true" tocDepth="3" symRefs="true" sortRefs= | |||
| <postal> | "true" updates="" obsoletes="" xml:lang="en" version="3"> | |||
| <street>Stationsplein 11</street> | ||||
| <city>Amsterdam</city> | ||||
| <country>Netherlands</country> | ||||
| </postal> | ||||
| <email>tdekock@ripe.net</email> | ||||
| </address> | ||||
| </author> | ||||
| <author fullname="Jiankang Yao" initials="J." surname="Yao" > | <!-- xml2rfc v2v3 conversion 3.17.1 --> | |||
| <organization>CNNIC</organization> | <front> | |||
| <address> | ||||
| <postal> | ||||
| <street>No.4 South 4th Street, Zhongguancun</street> | ||||
| <city>Beijing, 100190</city> | ||||
| <country>P.R. China</country> | ||||
| </postal> | ||||
| <email>yaojk@cnnic.cn</email> | ||||
| </address> | ||||
| </author> | ||||
| <date month="April" year="2023"/> | <title abbrev="ROA Considerations">Avoiding Route Origin Authorizations (ROA | |||
| <area>Operations and Management Area (ops)</area> | s) Containing Multiple IP Prefixes | |||
| <workgroup>SIDR Operations</workgroup> | </title> | |||
| <keyword>ROA</keyword> | <seriesInfo name="RFC" value="9455"/> | |||
| <seriesInfo name="BCP" value="238"/> | ||||
| <author fullname="Zhiwei Yan" initials="Z." surname="Yan"> | ||||
| <organization>CNNIC</organization> | ||||
| <address> | ||||
| <postal> | ||||
| <street>No.4 South 4th Street, Zhongguancun</street> | ||||
| <city>Beijing</city> | ||||
| <code>100190</code> | ||||
| <country>China</country> | ||||
| </postal> | ||||
| <email>yanzhiwei@cnnic.cn</email> | ||||
| </address> | ||||
| </author> | ||||
| <author fullname="Randy Bush" initials="R." surname="Bush"> | ||||
| <organization>IIJ Research Lab & Arrcus, Inc.</organization> | ||||
| <address> | ||||
| <postal> | ||||
| <street>5147 Crystal Springs</street> | ||||
| <city>Bainbridge Island</city> | ||||
| <region>Washington</region> | ||||
| <code>98110</code> | ||||
| <country>United States of America</country> | ||||
| </postal> | ||||
| <email>randy@psg.com</email> | ||||
| </address> | ||||
| </author> | ||||
| <author fullname="Guanggang Geng" initials="G." surname="Geng"> | ||||
| <organization>Jinan University</organization> | ||||
| <address> | ||||
| <postal> | ||||
| <street>No.601, West Huangpu Avenue</street> | ||||
| <code>510632</code> | ||||
| <city>Guangzhou</city> | ||||
| <country>China</country> | ||||
| </postal> | ||||
| <email>gggeng@jnu.edu.cn</email> | ||||
| </address> | ||||
| </author> | ||||
| <author fullname="Ties de Kock" initials="T." surname="de Kock"> | ||||
| <organization>RIPE NCC</organization> | ||||
| <address> | ||||
| <postal> | ||||
| <street>Stationsplein 11</street> | ||||
| <city>Amsterdam</city> | ||||
| <country>Netherlands</country> | ||||
| </postal> | ||||
| <email>tdekock@ripe.net</email> | ||||
| </address> | ||||
| </author> | ||||
| <author fullname="Jiankang Yao" initials="J." surname="Yao"> | ||||
| <organization>CNNIC</organization> | ||||
| <address> | ||||
| <postal> | ||||
| <street>No.4 South 4th Street, Zhongguancun</street> | ||||
| <city>Beijing</city> | ||||
| <code>100190</code> | ||||
| <country>China</country> | ||||
| </postal> | ||||
| <email>yaojk@cnnic.cn</email> | ||||
| </address> | ||||
| </author> | ||||
| <date month="August" year="2023"/> | ||||
| <area>ops</area> | ||||
| <workgroup>sidrops</workgroup> | ||||
| <keyword>ROA</keyword> | ||||
| <keyword>Route Origin Authorization</keyword> | ||||
| <abstract> | <abstract> | |||
| <t>When using the Resource Public Key Infrastructure (RPKI), | <t>When using the Resource Public Key Infrastructure (RPKI), | |||
| address space holders need to issue Route Origin Authorization (ROA) | address space holders need to issue Route Origin Authorization (ROA) | |||
| object(s) to authorize one or more Autonomous Systems (ASes) to originate | object(s) to authorize one or more Autonomous Systems (ASes) to originate | |||
| routes to IP address prefix(es). | BGP routes to IP address prefix(es). | |||
| This memo discusses operational problems which may arise from | This memo discusses operational problems that may arise from | |||
| ROAs containing multiple IP prefixes and recommends that each ROA | ROAs containing multiple IP prefixes and recommends that each ROA | |||
| contains a single IP prefix.</t> | contain a single IP prefix.</t> | |||
| </abstract> | </abstract> | |||
| </front> | </front> | |||
| <middle> | <middle> | |||
| <section title="Introduction"> | <section> | |||
| <t>In the RPKI, a ROA is a digitally signed object which identifies that a | <name>Introduction</name> | |||
| <t>In the RPKI, a ROA, which is a digitally signed object, identifies that | ||||
| a | ||||
| single AS has been authorized by the address space | single AS has been authorized by the address space | |||
| holder to originate routes to one or more IP prefixes within the related a ddress | holder to originate BGP routes to one or more IP prefixes within the relat ed address | |||
| space <xref target="RFC6482"/>.</t> | space <xref target="RFC6482"/>.</t> | |||
| <t>Each ROA contains an asID field and an ipAddrBlocks field. The | ||||
| <t>Each ROA contains an "asID" field and an "ipAddrBlocks" field. The | asID field contains a single AS number that is authorized to | |||
| "asID" field contains a single AS number which is authorized to | originate routes to the given IP address prefix(es). The ipAddrBlocks | |||
| originate routes to the given IP address prefix(es). The "ipAddrBlocks" | ||||
| field contains one or more IP address prefixes to which the AS is | field contains one or more IP address prefixes to which the AS is | |||
| authorized to originate the routes.</t> | authorized to originate the routes.</t> | |||
| <t>If the address space holder needs to authorize more than one AS to | <t>If the address space holder needs to authorize more than one AS to | |||
| advertise the same set of IP prefixes, multiple ROAs must be issued (one | advertise the same set of IP prefixes, multiple ROAs must be issued (one | |||
| for each AS number <xref target="RFC6480"/>). Prior to this document, | for each AS number <xref target="RFC6480"/>). Prior to this document, | |||
| there was no guidance recommending the issuance of a separate ROA for each IP | there was no guidance recommending the issuance of a separate ROA for each IP | |||
| prefix or a single ROA containing multiple IP prefixes.</t> | prefix or a single ROA containing multiple IP prefixes.</t> | |||
| </section> | </section> | |||
| <section> | ||||
| <section title="Terminology"> | <name>Terminology</name> | |||
| <t>The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT", | <t> | |||
| "SHOULD", "SHOULD NOT", "RECOMMENDED", "NOT RECOMMENDED", "MAY", and | The key words "<bcp14>MUST</bcp14>", "<bcp14>MUST NOT</bcp14>", | |||
| "OPTIONAL" in this document are to be interpreted as described in BCP 14 | "<bcp14>REQUIRED</bcp14>", "<bcp14>SHALL</bcp14>", "<bcp14>SHALL NOT</bcp14> | |||
| <xref target="RFC2119"/> | ", | |||
| <xref target="RFC8174"/> when, and only when, they appear in all | "<bcp14>SHOULD</bcp14>", "<bcp14>SHOULD NOT</bcp14>", | |||
| capitals, as shown here.</t> | "<bcp14>RECOMMENDED</bcp14>", "<bcp14>NOT RECOMMENDED</bcp14>", | |||
| "<bcp14>MAY</bcp14>", and "<bcp14>OPTIONAL</bcp14>" in this document are to | ||||
| be | ||||
| interpreted as described in BCP 14 <xref target="RFC2119"/> <xref | ||||
| target="RFC8174"/> when, and only when, they appear in all capitals, as | ||||
| shown here. | ||||
| </t> | ||||
| </section> | </section> | |||
| <section> | ||||
| <section title="Problem Statement"> | <name>Problem Statement</name> | |||
| <t>An address space holder can issue a separate ROA for each of its | <t>An address space holder can issue a separate ROA for each of its | |||
| routing announcements. Alternatively, for a given asID, it can issue a | routing announcements. Alternatively, for a given asID, it can issue a | |||
| single ROA for multiple routing announcements, or even for all of its | single ROA for multiple routing announcements, or even for all of its | |||
| routing announcements. Since a given ROA is either valid or invalid, the | routing announcements. Since a given ROA is either valid or invalid, the | |||
| routing announcements for which that ROA was issued will "share fate" | routing announcements for which that ROA was issued will "share fate" | |||
| when it comes to RPKI validation. Currently, no guidance is offered in | when it comes to RPKI validation. Currently, no existing RFCs provide reco | |||
| existing RFCs to recommend what kinds of ROA are issued: one per prefix, | mmendations about what kinds of ROAs to issue: one per prefix | |||
| or one ROA for multiple routing announcements. The problem of | or one for multiple routing announcements. The problem of | |||
| fate-sharing was not discussed or addressed.</t> | fate-sharing was not discussed or addressed.</t> | |||
| <t> In the RPKI trust chain, the Certification Authority (CA) certificate | ||||
| <t>In the RPKI trust chain, the Certification Authority (CA) certificate | issued by a parent CA to a delegatee of some resources may be revoked | |||
| issued by a parent CA to a delegate of some resources may be revoked by | by the parent at any time, which would result in changes to resources specifie | |||
| the parent at any time resulting in changes to resources specified in the | d | |||
| <xref target="RFC3779"/> certificate extension. Any ROA object that | in the certificate extensions defined in <xref target="RFC3779"/>. Any ROA obj | |||
| includes resources which are a) no longer entirely contained in the new CA | ect that | |||
| certificate, or b) contained in a new CA certificate that has not yet | includes resources that are a) no longer entirely contained in the new CA | |||
| been discovered by Relying Party (RP) software, will be rejected as invali | certificate or b) contained in a new CA certificate that has not yet | |||
| d. | been discovered by Relying Party (RP) software will be rejected as invalid | |||
| . | ||||
| Since ROA invalidity affects all routes specified in that ROA, unchanged | Since ROA invalidity affects all routes specified in that ROA, unchanged | |||
| resources with associated routes via that asID cannot be separated from | resources with associated routes via that asID cannot be separated from | |||
| those affected by the change in the CA certificate validity. They will | those affected by the change in CA certificate validity. They will | |||
| fall under this invalid ROA even though there was no intention to change | fall under this invalid ROA even though there was no intent to change | |||
| their validity. Had these resources been in a separate ROA, there would | their validity. Had these resources been in a separate ROA, there would | |||
| have been no change to the issuing CA certificate, and therefore no | be no change to the issuing CA certificate and therefore no | |||
| subsequent invalidity.</t> | subsequent invalidity.</t> | |||
| <t>CAs have to carefully coordinate ROA updates with resource certificate | <t>CAs have to carefully coordinate ROA updates with updates to a resource | |||
| updates. This process may be automated if a single entity manages both | certificate. | |||
| the parent CA and the CA issuing the ROAs (Scenario D in <xref | This process may be automated if a single entity manages both | |||
| target="RFC8211"/> Section 3). However, in other deployment scenarios, | the parent CA and the CA issuing the ROAs (Scenario D in <xref target="RFC | |||
| 8211" sectionFormat="comma" section="3.4"/>). However, in other deployment scena | ||||
| rios, | ||||
| this coordination becomes more complex.</t> | this coordination becomes more complex.</t> | |||
| <t>As there is a single expiration time for the entire ROA, expiration | <t>As there is a single expiration time for the entire ROA, expiration | |||
| will affect all prefixes in the ROA. Thus, any changes to the ROA | will affect all prefixes in the ROA. | |||
| for any of the prefixes must be synchronized with any changes to | Thus, changes to the ROA for any of the prefixes must be synchronized | |||
| other prefixes, especially time-limitations on authorization for a prefix. | with changes to other prefixes, especially when authorization for a | |||
| prefix is time bounded. | ||||
| Had these prefixes been in separately issued ROAs, the validity interval w ould be | Had these prefixes been in separately issued ROAs, the validity interval w ould be | |||
| unique to each ROA, and invalidity would only be affected by re-issuance o | unique to each ROA, and invalidity would only be affected by reissuance of | |||
| f | the specific issuing parent CA certificate.</t> | |||
| the specific parent CA certificate which issued them.</t> | <t>A prefix could be allowed to originate from an AS only for a | |||
| specific period of time, for example, if the IP prefix was leased out | ||||
| <t>A prefix could be allowed to be originated from an AS only for a | temporarily. If a ROA with multiple IP prefixes was used, this would be mo | |||
| specific period of time, for example if the IP prefix was leased out | re difficult to manage, and potentially be more error-prone. Similarly, | |||
| temporarily. This would be more difficult to manage, and potentially be | more complex routing may require changes in asID or routes for a subset of | |||
| more error-prone if a ROA with multiple IP prefixes was used. Similarly | prefixes. | |||
| more complex routing may demand changes in asID or routes for a subset of | Reissuance of a ROA might result in changes to the validity of | |||
| prefixes. Re-issuance of the ROA may cause change to validity for all | previously received BGP routes covered by the ROA's prefixes. | |||
| routes in the affected ROA. If the time limited resources are in | There will be no change to the validity of unaffected routes if | |||
| separate ROAs, or for more complex routing if each change in asID | a) the time-limited resources are in separate ROAs, or b) for more | |||
| or routes for a given prefix is reflected in a change to a discrete ROA, | complex routing, each change in asID or a change in routes for a | |||
| then no change to validity of unaffected routes will be caused.</t> | given prefix is reflected in a change to a discrete ROA. </t> | |||
| <t>The use of ROA with a single IP prefix can minimize these | <t>The use of ROA with a single IP prefix can minimize these | |||
| side-effects. It avoids fate-sharing irrespective of the causes, where | side effects. It avoids fate-sharing irrespective of the cause, where | |||
| the parent CA issuing each ROA remains valid and where each ROA itself | the parent CA issuing each ROA remains valid and where each ROA itself | |||
| remains valid.</t> | remains valid.</t> | |||
| </section> | </section> | |||
| <section> | ||||
| <section title="Recommendations"> | <name>Recommendations</name> | |||
| <t>Unless the CA has good reasons to the contrary, issued ROA SHOULD | <t>Unless the CA has good reasons to the contrary, an issued ROA <bcp14>SH | |||
| OULD</bcp14> | ||||
| contain a single IP prefix.</t> | contain a single IP prefix.</t> | |||
| </section> | </section> | |||
| <section anchor="Security"> | ||||
| <section anchor="Security" title="Security Considerations"> | <name>Security Considerations</name> | |||
| <t>Issuing separate ROAs for independent IP prefixes may increase the | <t>Issuing separate ROAs for independent IP prefixes may increase the | |||
| file fetch burden on RP during validation. </t> | file-fetch burden on the RP during validation. </t> | |||
| </section> | </section> | |||
| <section anchor="IANA"> | ||||
| <section anchor="IANA" title="IANA Considerations"> | <name>IANA Considerations</name> | |||
| <t>This document does not request any IANA action.</t> | <t>This document has no IANA actions.</t> | |||
| </section> | </section> | |||
| </middle> | ||||
| <back> | ||||
| <references> | ||||
| <name>Normative References</name> | ||||
| <xi:include href="https://bib.ietf.org/public/rfc/bibxml/reference.RFC.2 | ||||
| 119.xml"/> | ||||
| <xi:include href="https://bib.ietf.org/public/rfc/bibxml/reference.RFC.3 | ||||
| 779.xml"/> | ||||
| <xi:include href="https://bib.ietf.org/public/rfc/bibxml/reference.RFC.8 | ||||
| 174.xml"/> | ||||
| <xi:include href="https://bib.ietf.org/public/rfc/bibxml/reference.RFC.6 | ||||
| 482.xml"/> | ||||
| <xi:include href="https://bib.ietf.org/public/rfc/bibxml/reference.RFC.8 | ||||
| 211.xml"/> | ||||
| <xi:include href="https://bib.ietf.org/public/rfc/bibxml/reference.RFC.6 | ||||
| 480.xml"/> | ||||
| </references> | ||||
| <section anchor="Acknowledgements" numbered="false"> | ||||
| <name>Acknowledgements</name> | ||||
| <section anchor="Acknowledgements" title="Acknowledgements"> | <t>The authors wish to thank the following people for their reviews and | |||
| <t>The authors wish to thank the following people for their review and | contributions to this document: <contact fullname="George Michaelson"/>, < | |||
| contributions to this document: George Michaelson, Tim Bruijnzeels, Job | contact fullname="Tim Bruijnzeels"/>, <contact fullname="Job | |||
| Snijders, Di Ma, Geoff Huston, Tom Harrison, Rob Austein, Stephen Kent, | Snijders"/>, <contact fullname="Di Ma"/>, <contact fullname="Geoff Huston" | |||
| Christopher Morrow, Russ Housley, Ching-Heng Ku, Keyur Patel, Cuiling | />, <contact fullname="Tom Harrison"/>, <contact fullname="Rob Austein"/>, <cont | |||
| Zhang and Kejun Dong. Thanks are also due to Warren Kumari for the | act fullname="Stephen Kent"/>, | |||
| <contact fullname="Christopher Morrow"/>, <contact fullname="Russ Housley" | ||||
| />, <contact fullname="Ching-Heng Ku"/>, <contact fullname="Keyur Patel"/>, <con | ||||
| tact fullname="Cuiling | ||||
| Zhang"/>, and <contact fullname="Kejun Dong"/>. Thanks are also due to <co | ||||
| ntact fullname="Sean Turner"/> for the | ||||
| Security Area Directorate review. </t> | Security Area Directorate review. </t> | |||
| <t>This work was supported by the Beijing Nova Program of Science and | <t>This work was supported by the Beijing Nova Program of Science and | |||
| Technology under grant Z191100001119113.</t> | Technology under grant Z191100001119113.</t> | |||
| <t>This document was produced using the xml2rfc tool <xref | ||||
| target="RFC2629"/>.</t> | ||||
| </section> | </section> | |||
| </middle> | ||||
| <back> | ||||
| <references title="Normative References"> | ||||
| <?rfc include='reference.RFC.2119.xml'?> | ||||
| <?rfc include='reference.RFC.3779.xml'?> | ||||
| <?rfc include='reference.RFC.8174.xml'?> | ||||
| <?rfc include='reference.RFC.6482.xml'?> | ||||
| <?rfc include='reference.RFC.8211.xml'?> | ||||
| <?rfc include='reference.RFC.6480.xml'?> | ||||
| </references> | ||||
| <references title="Informative References"> | ||||
| <?rfc include='reference.RFC.2629.xml'?> | ||||
| </references> | ||||
| </back> | </back> | |||
| </rfc> | </rfc> | |||
| End of changes. 32 change blocks. | ||||
| 189 lines changed or deleted | 192 lines changed or added | |||
This html diff was produced by rfcdiff 1.48. | ||||