| TOC |
|
By submitting this Internet-Draft, each author represents that any applicable patent or other IPR claims of which he or she is aware have been or will be disclosed, and any of which he or she becomes aware will be disclosed, in accordance with Section 6 of BCP 79.
Internet-Drafts are working documents of the Internet Engineering Task Force (IETF), its areas, and its working groups. Note that other groups may also distribute working documents as Internet-Drafts.
Internet-Drafts are draft documents valid for a maximum of six months and may be updated, replaced, or obsoleted by other documents at any time. It is inappropriate to use Internet-Drafts as reference material or to cite them other than as “work in progress.”
The list of current Internet-Drafts can be accessed at http://www.ietf.org/ietf/1id-abstracts.txt.
The list of Internet-Draft Shadow Directories can be accessed at http://www.ietf.org/shadow.html.
This Internet-Draft will expire on October 24, 2008.
Copyright © The IETF Trust (2008).
This document defines an application of the Resource Public Key Infrastructure to validate the origination of routes advertised in the Border Gateway Protocol. The proposed application is intended to fit within the requirements for adding security to inter-domain routing, including the ability to support incremental and piecemeal deployment, and does not require any changes to the specification of BGP.
1.
Introduction
2.
Validation Outcomes of a BGP Route Object using ROAs
3.
Applying Validation Outcomes to BGP Route Selection
3.1.
Using ROA Validation Outcomes to reject BGP advertisements
4.
Open Issues
5.
Security Considerations
6.
IANA Considerations
7.
Normative References
§
Authors' Addresses
§
Intellectual Property and Copyright Statements
| TOC |
This document defines an application of the Resource Public Key Infrastructure (RPKI) to validate the origination of routes advertised in the Border Gateway Protocol (BGP) [RFC4271] (Rekhter, Y., Li, T., and S. Hares, “A Border Gateway Protocol 4 (BGP-4),” January 2006.).
The RPKI is based on on Resource Certificates. Resource Certificates are X.509 certificates that conform to the PKIX profile [RFC3280] (Housley, R., Polk, W., Ford, W., and D. Solo, “Internet X.509 Public Key Infrastructure Certificate and Certificate Revocation List (CRL) Profile,” April 2002.), and to the extensions for IP addresses and AS identifiers [RFC3779] (Lynn, C., Kent, S., and K. Seo, “X.509 Extensions for IP Addresses and AS Identifiers,” June 2004.). A Resource Certificate describes an action by an Issuer that binds a list of IP address blocks and Autonomous System (AS) numbers to the Subject of a certificate, identified by the unique association of the Subject's private key with the public key contained in the Resource Certificate. The PKI is structured such that each current Resource Certificate matches a current resource allocation or assignment. This is described in [I‑D.ietf‑sidr‑arch] (Lepinski, M., Kent, S., and R. Barnes, “An Infrastructure to Support Secure Internet Routing,” November 2007.).
Route Origin Authorizations (ROAs) are digitally signed objects that bind an address to an AS number, signed by the address holder. A ROA provides a means of verifying that an IP address block holder has authorized an AS to originate route objects in the inter-domain routing environment for that address block. ROAs are described in [I‑D.ietf‑sidr‑roa‑format] (Lepinski, M., Kent, S., and D. Kong, “An Infrastructure to Support Secure Internet Routing,” July 2007.).
This document describes how ROA validation outcomes can be used in the BGP route selection process, and how the proposed application are intended to fit within the requirements for adding security to inter-domain routing [ID.ietf‑rpsec‑bgpsecrec] (Christian, B. and T. Tauber, “BGP Security Requirements,” November 2007.), including the ability to support incremental and piecemeal deployment, and, furthermore, does not require any changes to the specification of BGP.
| TOC |
A BGP Route Object is an address prefix and a set of attributes. In terms of ROA validation the prefix value and the origin AS are used in the validation operation.
[Note: If the origination of the prefix is an AS Set then ??. The draft authors do not have a clear idea as to what to propose here!]
ROA validation is described in [I‑D.ietf‑sidr‑roa‑format] (Lepinski, M., Kent, S., and D. Kong, “An Infrastructure to Support Secure Internet Routing,” July 2007.), and the outcome of the validation operation is that the ROA is valid in the context of the RPKI or validation has failed.
There appears to be two means of matching a route object to a ROA: decoupled and linked.
The decoupled approach where the ROAs are managed and distributed independently of the operation of the routing protocol and a local BGP speaker has access to a local cache of the complete set of ROAs and the RPKI data set when performing a validation operation. In this case the route object does not refer to a ROA, a certificate validation path, CRLs nor Trust Anchors, and it is the role of the relying party to match a route object to one or more candidate ROAs and perform the validation operation on a selected ROA in order to determine the appropriate local actions to perform on the route object. The second approach is where the route object references a ROA, either by explicit inclusion of the ROA itself as an attribute of the route object that is carried in BGP or by reference where some identification of the ROA is carried as an attribute of the object.
The more general case here is the decoupled approach where a set of ROAs are selected where the address prefix in the ROA is an exact match, or the address prefix in the ROA is a covering aggregate of the address prefix in the route object and the ROA has the requireExactMatch set to FALSE.The following outcomes are possible using the defined ROA validation procedure for each ROA in this set:
In this case the ROA that would be used for the validation function is selected from the set such that the most specific valid ROA that matches or covers the route object address prefix and where the route object origin AS matches the ROA AS. If there is no such ROA in the set, then the most specific valid ROA is selected. If there is no such ROA in the set then the most specific ROA is selected.
The linked approach requires the route object to reference a ROA either buy inclusion of the ROA as an attribute of the route object, or inclusion of a identity field as a means of identifying a particular ROA. In this case the set of outcomes of ROA validation is a subset of the decoupled approach, as follows:
| TOC |
Within the framework of the abstract model of BGP operation, a received prefix announcement from a peer is compared to all announcements for this prefix received from other peers and a route selection procedure is used to select the "best" route object from this candiudate set which is then used locally by placing it in the loc-RIB, and is announced to peers as the local "best" route.
It is proposed that the validation outcome be used as part of the determination of the local degree of preference as defined in section 9.1.1 of the BGP specification [RFC4271] (Rekhter, Y., Li, T., and S. Hares, “A Border Gateway Protocol 4 (BGP-4),” January 2006.).
In the case of a partial deployment scenario, when some prefixes are described in ROAs and others are not, then the relative ranking of validation outcomes from the highest (most preferred) to the lowest (least preferred) degree of preference are proposed as follows:
In the case of comprehensive deployment of ROAs the relative local degree of preference can be adjusted such that cases 3 through 5 of the above list have an equal level of lesser preference, as in this case there is no "missing" ROA so that a validation failure need not be interpreted as a potentially valid route object that does not have an associated ROA.
| TOC |
In the case of partial deployment of ROAs there are a very limited set of circumstances where the outcome of ROA validation can be used as grounds to reject all consideration of the route object as an invalid advertisement. While the presence of a valid ROA that matches the advertisement is astrong indication that an advertisement matches the authority provided by the prefix holder to advertise the prefix into the routing system, the absence of a ROA or the invalidity of a covering ROA does not provide a conclusive indication that the advertisement has been undertaken without the address holder's permission.
In the case of comprehensive deployment of ROAs an invalid ROA could be considered grounds for rejection of the route object advertisement were it not for the issue of circular dependence. If the authoritative publication point of the repository of ROAs or any certificates used to related to an address prefix is stored at a location that lies within the address prefix, then the repository can only be accessed once a route for the prefix has been accepted. If the local BGP speaker is in a position to use some mechanism to check for circular dependencies then in the case of comprehensive deployment of ROAs an invalid ROA would be sufficient grounds to reject a route object.
It is noted that validation of a ROA infers two properties of the address, namely that the address prefix itself is "valid" and is not part of a "reserved" pool held by the IANA, an RIR or any LIR, and secondly that the origination of the address in the routing system has been undertaken with the explicit permission of the address holder. Accepting an advertisement of an address prefix that has failed ROA validation admits the possibility of accepting an advertisment for an invalid address that is drawn from a reserved pool. In the case of comprehensive deployment of ROAS the validation outcome of "ROA missing" is a strong indication that the address itself is invalid, as in the comprehensive deployment model all validly advertised address space is, by definition, covered by a ROA. The issue of circularity dependency between the address and the publication point of the ROA would still need to be addressed in this case.
| TOC |
This document provides a description of how ROA validation could be used by a BGP speaker. It is noted that the proposed procedure requires no changes to the operation of BGP. It is also noted that the decoupled and linked approach are not mutually exclusive, and the same procedure can be applied to route objects that contain an explicit pointer to the associated ROA and route objects where the local BGP speaker has to create a set of candidate ROAs that could be applied to a route object. However, there are a number of ques5tions about this approach that are not resolved here.
Some open issues at this point are:
| TOC |
[to be completed]
| TOC |
[There are no IANA considerations in this document at this stage. Later iterations of this draft propose to add a ROA identifier into the BGP route attribute set]
| TOC |
| [I-D.ietf-sidr-arch] | Lepinski, M., Kent, S., and R. Barnes, “An Infrastructure to Support Secure Internet Routing,” draft-ietf-sidr-arch (work in progress), November 2007 (TXT). |
| [I-D.ietf-sidr-roa-format] | Lepinski, M., Kent, S., and D. Kong, “An Infrastructure to Support Secure Internet Routing,” draft-ietf-sidr-roa-format (work in progress), July 2007 (TXT). |
| [ID.ietf-rpsec-bgpsecrec] | Christian, B. and T. Tauber, “BGP Security Requirements,” draft-ietf-sidr-roa-format (work in progress), November 2007 (TXT). |
| [RFC3280] | Housley, R., Polk, W., Ford, W., and D. Solo, “Internet X.509 Public Key Infrastructure Certificate and Certificate Revocation List (CRL) Profile,” RFC 3280, April 2002 (TXT). |
| [RFC3779] | Lynn, C., Kent, S., and K. Seo, “X.509 Extensions for IP Addresses and AS Identifiers,” RFC 3779, June 2004 (TXT). |
| [RFC4271] | Rekhter, Y., Li, T., and S. Hares, “A Border Gateway Protocol 4 (BGP-4),” RFC 4271, January 2006 (TXT). |
| TOC |
| Geoff Huston | |
| Asia Pacific Network Information Centre | |
| Email: | gih@apnic.net |
| URI: | http://www.apnic.net |
| George Michaelson | |
| Asia Pacific Network Information Centre | |
| Email: | ggm@apnic.net |
| URI: | http://www.apnic.net |
| TOC |
Copyright © The IETF Trust (2008).
This document is subject to the rights, licenses and restrictions contained in BCP 78, and except as set forth therein, the authors retain all their rights.
This document and the information contained herein are provided on an “AS IS” basis and THE CONTRIBUTOR, THE ORGANIZATION HE/SHE REPRESENTS OR IS SPONSORED BY (IF ANY), THE INTERNET SOCIETY, THE IETF TRUST AND THE INTERNET ENGINEERING TASK FORCE DISCLAIM ALL WARRANTIES, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO ANY WARRANTY THAT THE USE OF THE INFORMATION HEREIN WILL NOT INFRINGE ANY RIGHTS OR ANY IMPLIED WARRANTIES OF MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE.
The IETF takes no position regarding the validity or scope of any Intellectual Property Rights or other rights that might be claimed to pertain to the implementation or use of the technology described in this document or the extent to which any license under such rights might or might not be available; nor does it represent that it has made any independent effort to identify any such rights. Information on the procedures with respect to rights in RFC documents can be found in BCP 78 and BCP 79.
Copies of IPR disclosures made to the IETF Secretariat and any assurances of licenses to be made available, or the result of an attempt made to obtain a general license or permission for the use of such proprietary rights by implementers or users of this specification can be obtained from the IETF on-line IPR repository at http://www.ietf.org/ipr.
The IETF invites any interested party to bring to its attention any copyrights, patents or patent applications, or other proprietary rights that may cover technology that may be required to implement this standard. Please address the information to the IETF at ietf-ipr@ietf.org.
Funding for the RFC Editor function is provided by the IETF Administrative Support Activity (IASA).