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. |