draft-ietf-sidr-origin-ops-09.txt   draft-ietf-sidr-origin-ops-10.txt 
Network Working Group R. Bush Network Working Group R. Bush
Internet-Draft Internet Initiative Japan Internet-Draft Internet Initiative Japan
Intended status: BCP May 23, 2011 Intended status: BCP July 10, 2011
Expires: November 24, 2011 Expires: January 11, 2012
RPKI-Based Origin Validation Operation RPKI-Based Origin Validation Operation
draft-ietf-sidr-origin-ops-09 draft-ietf-sidr-origin-ops-10
Abstract Abstract
Deployment of RPKI-based BGP origin validation has many operational Deployment of RPKI-based BGP origin validation has many operational
considerations. This document attempts to collect and present them. considerations. This document attempts to collect and present them.
It is expected to evolve as RPKI-based origin validation is deployed It is expected to evolve as RPKI-based origin validation is deployed
and the dynamics are better understood. and the dynamics are better understood.
Requirements Language Requirements Language
skipping to change at page 1, line 39 skipping to change at page 1, line 39
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 November 24, 2011. This Internet-Draft will expire on January 11, 2012.
Copyright Notice Copyright Notice
Copyright (c) 2011 IETF Trust and the persons identified as the Copyright (c) 2011 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
skipping to change at page 2, line 24 skipping to change at page 2, line 24
3. RPKI Distribution and Maintenance . . . . . . . . . . . . . . . 3 3. RPKI Distribution and Maintenance . . . . . . . . . . . . . . . 3
4. Within a Network . . . . . . . . . . . . . . . . . . . . . . . 5 4. Within a Network . . . . . . . . . . . . . . . . . . . . . . . 5
5. Routing Policy . . . . . . . . . . . . . . . . . . . . . . . . 5 5. Routing Policy . . . . . . . . . . . . . . . . . . . . . . . . 5
6. Notes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6 6. Notes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6
7. Security Considerations . . . . . . . . . . . . . . . . . . . . 7 7. Security Considerations . . . . . . . . . . . . . . . . . . . . 7
8. IANA Considerations . . . . . . . . . . . . . . . . . . . . . . 7 8. IANA Considerations . . . . . . . . . . . . . . . . . . . . . . 7
9. Acknowledgments . . . . . . . . . . . . . . . . . . . . . . . . 7 9. Acknowledgments . . . . . . . . . . . . . . . . . . . . . . . . 7
10. References . . . . . . . . . . . . . . . . . . . . . . . . . . 7 10. References . . . . . . . . . . . . . . . . . . . . . . . . . . 7
10.1. Normative References . . . . . . . . . . . . . . . . . . . 7 10.1. Normative References . . . . . . . . . . . . . . . . . . . 7
10.2. Informative References . . . . . . . . . . . . . . . . . . 8 10.2. Informative References . . . . . . . . . . . . . . . . . . 8
Author's Address . . . . . . . . . . . . . . . . . . . . . . . . . 8 Author's Address . . . . . . . . . . . . . . . . . . . . . . . . . 9
1. Introduction 1. Introduction
RPKI-based origin validation relies on widespread propagation of the RPKI-based origin validation relies on widespread deployment of the
Resource Public Key Infrastructure (RPKI) [I-D.ietf-sidr-arch]. How Resource Public Key Infrastructure (RPKI) [I-D.ietf-sidr-arch]. How
the RPKI is distributed and maintained globally is a serious concern the RPKI is distributed and maintained globally is a serious concern
from many aspects. from many aspects.
The global RPKI is in very initial stages of deployment, there is no The global RPKI is in very initial stages of deployment, there is no
root trust anchor, initial testing is being done by the IANA and some single root trust anchor, initial testing is being done by the IANA
RIRs, and there is a technical testbed. It is thought that origin and the RIRs, and there is a technical testbed. It is thought that
validation based on the RPKI will be deployed incrementally over the origin validation based on the RPKI will be deployed incrementally
next year to five years. over the next year to five years.
Origin validation only need be done by an AS's border routers and is Origin validation needs to be done only by an AS's border routers and
designed so that it can be used to protect announcements which are is designed so that it can be used to protect announcements which are
originated by large providers, upstreams and down-streams, and by originated by large providers, upstreams and down-streams, and by
small stub/enterprise/edge routers. small stub/enterprise/edge routers.
Origin validation has been designed to be deployed on current routers Origin validation has been designed to be deployed on current routers
without significant hardware upgrade. It should be used by everyone without significant hardware upgrade. It should be used in border
from large backbones to small stub/entetprise/edge routers. routers by operators from large backbones to small stub/entetprise/
edge networks.
RPKI-based origin validation has been designed so that, with prudent RPKI-based origin validation has been designed so that, with prudent
local routing policies, there is little risk that what is seen as local routing policies, there is little risk that what is seen as
today's normal Internet routing is threatened by imprudent deployment today's normal Internet routing is threatened by imprudent deployment
of the global RPKI, see Section 5. of the global RPKI, see Section 5.
2. Suggested Reading 2. Suggested Reading
It is assumed that the reader understands BGP, [RFC4271], the RPKI, It is assumed that the reader understands BGP, [RFC4271], the RPKI,
see [I-D.ietf-sidr-arch], the RPKI Repository Structure, see see [I-D.ietf-sidr-arch], the RPKI Repository Structure, see
[I-D.ietf-sidr-repos-struct], ROAs, see [I-D.ietf-sidr-roa-format], [I-D.ietf-sidr-repos-struct], ROAs, see [I-D.ietf-sidr-roa-format],
the RPKI to Router Protocol, see [I-D.ietf-sidr-rpki-rtr], RPKI-based the RPKI to Router Protocol, see [I-D.ietf-sidr-rpki-rtr], RPKI-based
Prefix Validation, see [I-D.ietf-sidr-pfx-validate], and Ghostbuster Prefix Validation, see [I-D.ietf-sidr-pfx-validate], and Ghostbusters
Records, see [I-D.ietf-sidr-ghostbusters]. Records, see [I-D.ietf-sidr-ghostbusters].
3. RPKI Distribution and Maintenance 3. RPKI Distribution and Maintenance
The RPKI is a distributed database containing certificates, CRLs, The RPKI is a distributed database containing certificates, CRLs,
manifests, ROAs, and Ghostbuster Records as described in manifests, ROAs, and Ghostbusters Records as described in
[I-D.ietf-sidr-repos-struct]. Policies and considerations for RPKI [I-D.ietf-sidr-repos-struct]. Policies and considerations for RPKI
object generation and maintenance are discussed elsewhere. object generation and maintenance are discussed elsewhere.
A local valid cache containing all RPKI data may be gathered from the A local valid cache containing all RPKI data may be gathered from the
global distributed database using the rsync protocol and a validation global distributed database using the rsync protocol, [RFC5781], and
tool such as rcynic. a validation tool such as rcynic [rcynic].
Validated caches may also be created and maintained from other Validated caches may also be created and maintained from other
validated caches. Network operators SHOULD take maximum advantage of validated caches. Network operators SHOULD take maximum advantage of
this feature to minimize load on the global distributed RPKI this feature to minimize load on the global distributed RPKI
database. database. Of course, the recipient SHOULD re-validate the data.
As RPKI-based origin validation relies on the availability of RPKI As RPKI-based origin validation relies on the availability of RPKI
data, operators SHOULD locate caches close to routers that require data, operators SHOULD locate caches close to routers that require
these data and services. A router can peer with one or more nearby these data and services. A router can peer with one or more nearby
caches. caches.
For redundancy, a router SHOULD peer with more than one cache at the For redundancy, a router SHOULD peer with more than one cache at the
same time. Peering with two or more, at least one local and others same time. Peering with two or more, at least one local and others
remote, is recommended. remote, is recommended.
If an operator trusts upstreams to carry their traffic, they SHOULD If an operator trusts upstreams to carry their traffic, they MAY also
also trust the RPKI data those upstreams cache, and SHOULD peer with trust the RPKI data those upstreams cache, and SHOULD peer with those
those caches. Note that this places an obligation on those upstreams caches. Note that this places an obligation on those upstreams to
to maintain fresh and reliable caches. maintain fresh and reliable caches. And, as usual, the recipient
SHOULD re-validate the data.
A transit provider or a network with peers SHOULD validate origins in A transit provider or a network with peers SHOULD validate origins in
announcements made by upstreams, down-streams, and peers. They still announcements made by upstreams, down-streams, and peers. They still
SHOULD trust the caches provided by their upstreams. SHOULD trust the caches provided by their upstreams.
Before issuing a ROA for a block, an operator MUST ensure that any Before issuing a ROA for a super-block, an operator MUST ensure that
sub-allocations from that block which are announced by other ASs, any sub-allocations from that block which are announced by other ASs,
e.g. customers, have correct ROAs in play. Otherwise, issuing a ROA e.g. customers, have correct ROAs in the RPKI. Otherwise, issuing a
for the super-block will cause the announcements of sub-allocations ROA for the super-block will cause the announcements of sub-
with no ROAs to be Invalid. allocations with no ROAs to be viewed as Invalid, see
[I-D.ietf-sidr-pfx-validate].
Use of RPKI-based origin validation removes any need to originate Use of RPKI-based origin validation removes any need to originate
more specifics to protect against mis-origination of a less specific more specifics to protect against mis-origination of a less specific
prefix. Having a ROA for the covering prefix should protect it. prefix. Having a ROA for the covering prefix should protect it.
To aid translation of ROAs into efficient search algorithms in To aid translation of ROAs into efficient search algorithms in
routers, ROAs SHOULD be as precise as possible, i.e. match prefixes routers, ROAs SHOULD be as precise as possible, i.e. match prefixes
as announced in BGP. E.g. software and operators SHOULD avoid use of as announced in BGP. E.g. software and operators SHOULD avoid use of
excessive max length values in ROAs unless operationally necessary. excessive max length values in ROAs unless operationally necessary.
skipping to change at page 5, line 15 skipping to change at page 5, line 18
Operators SHOULD be conservative in use of max length in ROAs. E.g., Operators SHOULD be conservative in use of max length in ROAs. E.g.,
if a prefix will have only a few sub-prefixes announced, multiple if a prefix will have only a few sub-prefixes announced, multiple
ROAs for the specific announcements SHOULD be used as opposed to one ROAs for the specific announcements SHOULD be used as opposed to one
ROA with a long max length. ROA with a long max length.
An environment where private address space is announced in eBGP the An environment where private address space is announced in eBGP the
operator MAY have private RPKI objects which cover these private operator MAY have private RPKI objects which cover these private
spaces. This will require a trust anchor created and owned by that spaces. This will require a trust anchor created and owned by that
environment, see [I-D.ietf-sidr-ltamgmt]. environment, see [I-D.ietf-sidr-ltamgmt].
Operators issuing ROAs may have customers announce their own prefixes Operators issuing ROAs may have customers which announce their own
and ASs into global eBGP but who do not wish to go though the work to prefixes and ASs into global eBGP but who do not wish to go though
manage the relevant certificates and ROAs. The operator SHOULD the work to manage the relevant certificates and ROAs. Operators
provision the RPKI data for these customers just as they provision SHOULD offer to provision the RPKI data for these customers just as
many other things for them. they provision many other things for them.
While a an operator using RPKI data MAY choose any frequency they While a an operator using RPKI data MAY choose any polling frequency
wish for ensuring they have a fresh RPKI cache, if they use RPKI data they wish for ensuring they have a fresh RPKI cache. However, if
as an input to operational routing decisions, they SHOULD ensure they use RPKI data as an input to operational routing decisions, they
local cache freshness at least every four to six hours. SHOULD ensure local cache freshness at least every four to six hours.
4. Within a Network 4. Within a Network
Origin validation need only be done by edge routers in a network, Origin validation need only be done by edge routers in a network,
those which border other networks/ASs. those which border other networks/ASs.
A validating router will use the result of origin validation to A validating router will use the result of origin validation to
influence local policy within its network, see Section 5. In influence local policy within its network, see Section 5. In
deployment this policy should fit into the AS's existing policy, deployment this policy should fit into the AS's existing policy,
preferences, etc. This allows a network to incrementally deploy preferences, etc. This allows a network to incrementally deploy
validation capable border routers. validation-capable border routers.
eBGP speakers which face more critical peers or up/down-streams would eBGP speakers which face more critical peers or up/down-streams are
be candidates for the earliest deployment. Validating more critical candidates for the earliest deployment. Validating more critical
received announcements should be considered in partial deployment. received announcements should be considered in partial deployment.
5. Routing Policy 5. Routing Policy
Origin validation based on the RPKI merely marks a received Origin validation based on the RPKI marks a received announcement as
announcement as having an origin which is Valid, NotFound, or having an origin which is Valid, NotFound, or Invalid. See
Invalid. See [I-D.ietf-sidr-pfx-validate]. How this is used in [I-D.ietf-sidr-pfx-validate]. How this is used in routing SHOULD be
routing SHOULD be specified by the operator's local policy. specified by the operator's local policy.
Local policy using relative preference is suggested to manage the Local policy using relative preference is suggested to manage the
uncertainty associated with a system in early deployment, applying uncertainty associated with a system in early deployment, applying
local policy to eliminate the threat of unroutability of prefixes due local policy to eliminate the threat of unroutability of prefixes due
to ill-advised certification policies and/or incorrect certification to ill-advised certification policies and/or incorrect certification
data. E.g. until the community feels comfortable relying on RPKI data. E.g. until the community feels comfortable relying on RPKI
data, routing on Invalid origin validity, though at a low preference, data, routing on Invalid origin validity, though at a low preference,
MAY occur. MAY occur.
As origin validation will be rolled out incrementally, coverage will As origin validation will be rolled out incrementally, coverage will
skipping to change at page 6, line 23 skipping to change at page 6, line 27
NotFound should decrease. Hence an operator's policy SHOULD NOT be NotFound should decrease. Hence an operator's policy SHOULD NOT be
overly strict, preferring Valid announcements, attaching a lower overly strict, preferring Valid announcements, attaching a lower
preference to, but still using, NotFound announcements, and dropping preference to, but still using, NotFound announcements, and dropping
or giving very low preference to Invalid announcements. or giving very low preference to Invalid announcements.
Some may choose to use the large Local-Preference hammer. Others Some may choose to use the large Local-Preference hammer. Others
might choose to let AS-Path rule and set their internal metric, which might choose to let AS-Path rule and set their internal metric, which
comes after AS-Path in the BGP decision process. comes after AS-Path in the BGP decision process.
When using a metric which is also influenced by other local policy, When using a metric which is also influenced by other local policy,
the operator should be careful not to create privilege upgrade an operator should be careful not to create privilege upgrade
vulnerabilities. E.g. if Local Pref is set depending on validity vulnerabilities. E.g. if Local Pref is set depending on validity
state, be careful that peer community signaling MAY NOT upgrade an state, be careful that peer community signaling MAY NOT upgrade an
invalid announcement to valid or better. Invalid announcement to Valid or better.
Announcements with Valid origins SHOULD be preferred over those with Announcements with Valid origins SHOULD be preferred over those with
NotFound or Invalid origins, if the latter are accepted at all. NotFound or Invalid origins, if the latter are accepted at all.
Announcements with NotFound origins SHOULD be preferred over those Announcements with NotFound origins SHOULD be preferred over those
with Invalid origins. with Invalid origins.
Announcements with Invalid origins MAY be used, but SHOULD be less Announcements with Invalid origins MAY be used, but SHOULD be less
preferred than those with Valid or NotFound. preferred than those with Valid or NotFound.
skipping to change at page 6, line 49 skipping to change at page 7, line 5
Like the DNS, the global RPKI presents only a loosely consistent Like the DNS, the global RPKI presents only a loosely consistent
view, depending on timing, updating, fetching, etc. Thus, one cache view, depending on timing, updating, fetching, etc. Thus, one cache
or router may have different data about a particular prefix than or router may have different data about a particular prefix than
another cache or router. There is no 'fix' for this, it is the another cache or router. There is no 'fix' for this, it is the
nature of distributed data with distributed caches. nature of distributed data with distributed caches.
There is some uncertainty about the origin AS of aggregates and what, There is some uncertainty about the origin AS of aggregates and what,
if any, ROA can be used. The long range solution to this is the if any, ROA can be used. The long range solution to this is the
deprecation of AS-SETs, see [I-D.wkumari-deprecate-as-sets]. deprecation of AS-SETs, see [I-D.wkumari-deprecate-as-sets].
Operators which manage certificates SHOULD have RPKI Ghostbuster Operators who manage certificates SHOULD associate RPKI Ghostbusters
Records (see [I-D.ietf-sidr-ghostbusters]), signed indirectly by End Records (see [I-D.ietf-sidr-ghostbusters]) with each publication
Entity certificates, for those certificates on which others' routing point they control. These are publication points holding the CRL,
depends for certificate and/or ROA validation. ROAs, and other signed objects issued by the operator, and made
available to other ASs in support of routing on the public Internet.
7. Security Considerations 7. Security Considerations
As the BGP origin is not signed, origin validation is open to As the BGP origin AS of an update is not signed, origin validation is
malicious spoofing. It is only designed to deal with inadvertent open to malicious spoofing. Therefore, RPKI-based origin validation
mis-advertisement. is designed to deal only with inadvertent mis-advertisement.
Origin validation does not address the problem of AS-Path validation. Origin validation does not address the problem of AS-Path validation.
Therefore paths are open to manipulation, either malicious or Therefore paths are open to manipulation, either malicious or
accidental. accidental.
The data plane may not follow the control plane. As BGP does not ensure that traffic will flow via the paths it
advertises, the data plane may not follow the control plane.
Be aware of the class of privilege escalation issues discussed in Be aware of the class of privilege escalation issues discussed in
Section 5 above. Section 5 above.
8. IANA Considerations 8. IANA Considerations
This document has no IANA Considerations. This document has no IANA Considerations.
9. Acknowledgments 9. Acknowledgments
The author wishes to thank Rob Austein, Steve Bellovin, Pradosh The author wishes to thank Rob Austein, Steve Bellovin, Steve Kent,
Mohapatra, Chris Morrow, Sandy Murphy, Keyur Patel, Heather and Jason Pradosh Mohapatra, Chris Morrow, Sandy Murphy, Keyur Patel, Heather
Schiller, John Scudder, Kotikalapudi Sriram, Maureen Stillman, and and Jason Schiller, John Scudder, Kotikalapudi Sriram, Maureen
Dave Ward. Stillman, and Dave Ward.
10. References 10. References
10.1. Normative References 10.1. Normative References
[RFC2119] Bradner, S., "Key words for use in RFCs to Indicate
Requirement Levels", BCP 14, RFC 2119, March 1997.
[I-D.ietf-sidr-arch] [I-D.ietf-sidr-arch]
Lepinski, M. and S. Kent, "An Infrastructure to Support Lepinski, M. and S. Kent, "An Infrastructure to Support
Secure Internet Routing", draft-ietf-sidr-arch-12 (work in Secure Internet Routing", draft-ietf-sidr-arch-13 (work in
progress), February 2011. progress), May 2011.
[I-D.ietf-sidr-ghostbusters]
Bush, R., "The RPKI Ghostbusters Record",
draft-ietf-sidr-ghostbusters-04 (work in progress),
June 2011.
[I-D.ietf-sidr-ltamgmt]
Reynolds, M. and S. Kent, "Local Trust Anchor Management
for the Resource Public Key Infrastructure",
draft-ietf-sidr-ltamgmt-02 (work in progress), June 2011.
[I-D.ietf-sidr-pfx-validate]
Mohapatra, P., Scudder, J., Ward, D., Bush, R., and R.
Austein, "BGP Prefix Origin Validation",
draft-ietf-sidr-pfx-validate-01 (work in progress),
February 2011.
[I-D.ietf-sidr-repos-struct] [I-D.ietf-sidr-repos-struct]
Huston, G., Loomans, R., and G. Michaelson, "A Profile for Huston, G., Loomans, R., and G. Michaelson, "A Profile for
Resource Certificate Repository Structure", Resource Certificate Repository Structure",
draft-ietf-sidr-repos-struct-07 (work in progress), draft-ietf-sidr-repos-struct-08 (work in progress),
February 2011. June 2011.
[I-D.ietf-sidr-roa-format] [I-D.ietf-sidr-roa-format]
Lepinski, M., Kent, S., and D. Kong, "A Profile for Route Lepinski, M., Kent, S., and D. Kong, "A Profile for Route
Origin Authorizations (ROAs)", Origin Authorizations (ROAs)",
draft-ietf-sidr-roa-format-10 (work in progress), draft-ietf-sidr-roa-format-12 (work in progress),
February 2011. May 2011.
[I-D.ietf-sidr-rpki-rtr] [I-D.ietf-sidr-rpki-rtr]
Bush, R. and R. Austein, "The RPKI/Router Protocol", Bush, R. and R. Austein, "The RPKI/Router Protocol",
draft-ietf-sidr-rpki-rtr-11 (work in progress), draft-ietf-sidr-rpki-rtr-13 (work in progress), June 2011.
March 2011.
[I-D.ietf-sidr-pfx-validate]
Mohapatra, P., Scudder, J., Ward, D., Bush, R., and R.
Austein, "BGP Prefix Origin Validation",
draft-ietf-sidr-pfx-validate-01 (work in progress),
February 2011.
[I-D.ietf-sidr-ghostbusters] [RFC2119] Bradner, S., "Key words for use in RFCs to Indicate
Bush, R., "The RPKI Ghostbusters Record", Requirement Levels", BCP 14, RFC 2119, March 1997.
draft-ietf-sidr-ghostbusters-03 (work in progress),
March 2011.
[I-D.ietf-sidr-ltamgmt] [RFC5781] Weiler, S., Ward, D., and R. Housley, "The rsync URI
Kent, S. and M. Reynolds, "Local Trust Anchor Management Scheme", RFC 5781, February 2010.
for the Resource Public Key Infrastructure",
draft-ietf-sidr-ltamgmt-00 (work in progress),
November 2010.
10.2. Informative References 10.2. Informative References
[RFC4271] Rekhter, Y., Li, T., and S. Hares, "A Border Gateway
Protocol 4 (BGP-4)", RFC 4271, January 2006.
[I-D.wkumari-deprecate-as-sets] [I-D.wkumari-deprecate-as-sets]
Kumari, W., "Deprecation of BGP AS_SET, AS_CONFED_SET.", Kumari, W., "Deprecation of BGP AS_SET, AS_CONFED_SET.",
draft-wkumari-deprecate-as-sets-01 (work in progress), draft-wkumari-deprecate-as-sets-01 (work in progress),
September 2010. September 2010.
[RFC4271] Rekhter, Y., Li, T., and S. Hares, "A Border Gateway
Protocol 4 (BGP-4)", RFC 4271, January 2006.
[rcynic] "rcynic read-me",
<http://subvert-rpki.hactrn.net/rcynic/README>.
Author's Address Author's Address
Randy Bush Randy Bush
Internet Initiative Japan Internet Initiative Japan
5147 Crystal Springs 5147 Crystal Springs
Bainbridge Island, Washington 98110 Bainbridge Island, Washington 98110
US US
Phone: +1 206 780 0431 x1 Phone: +1 206 780 0431 x1
Email: randy@psg.com Email: randy@psg.com
 End of changes. 34 change blocks. 
87 lines changed or deleted 96 lines changed or added

This html diff was produced by rfcdiff 1.41. The latest version is available from http://tools.ietf.org/tools/rfcdiff/