Network Working Group                                            R. Bush
Internet-Draft                                 Internet Initiative Japan
Intended status: Best Current Practice                       August 2012
Expires: January 31, 2013

                 RPKI-Based Origin Validation Operation


   Deployment of RPKI-based BGP origin validation has many operational
   considerations.  This document attempts to collect and present the
   most critical.  It is expected to evolve as RPKI-based origin
   validation is deployed and the dynamics are better understood.

Requirements Language

   The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT",
   be interpreted as described in RFC 2119 [RFC2119] only when they
   appear in all upper case.  They may also appear in lower or mixed
   case as English words, without any normative meaning.

Status of This Memo

   This Internet-Draft is submitted in full conformance with the
   provisions of BCP 78 and BCP 79.

   Internet-Drafts are working documents of the Internet Engineering
   Task Force (IETF).  Note that other groups may also distribute
   working documents as Internet-Drafts.  The list of current Internet-
   Drafts is at

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

   This Internet-Draft will expire on January 31, 2013.

Copyright Notice

   Copyright (c) 2012 IETF Trust and the persons identified as the
   document authors.  All rights reserved.

Bush                    Expires January 31, 2013                [Page 1]

Internet-Draft   RPKI-Based Origin Validation Operation      August 2012

   This document is subject to BCP 78 and the IETF Trust's Legal
   Provisions Relating to IETF Documents (
   license-info) in effect on the date of publication of this document.
   Please review these documents carefully, as they describe your rights
   and restrictions with respect to this document.  Code Components
   extracted from this document must include Simplified BSD License text
   as described in Section 4.e of the Trust Legal Provisions and are
   provided without warranty as described in the Simplified BSD License.

Table of Contents

   1.  Introduction . . . . . . . . . . . . . . . . . . . . . . . . .  2
   2.  Suggested Reading  . . . . . . . . . . . . . . . . . . . . . .  3
   3.  RPKI Distribution and Maintenance  . . . . . . . . . . . . . .  3
   4.  Within a Network . . . . . . . . . . . . . . . . . . . . . . .  5
   5.  Routing Policy . . . . . . . . . . . . . . . . . . . . . . . .  5
   6.  Notes  . . . . . . . . . . . . . . . . . . . . . . . . . . . .  7
   7.  Security Considerations  . . . . . . . . . . . . . . . . . . .  8
   8.  IANA Considerations  . . . . . . . . . . . . . . . . . . . . .  8
   9.  Acknowledgments  . . . . . . . . . . . . . . . . . . . . . . .  8
   10. References . . . . . . . . . . . . . . . . . . . . . . . . . .  8
     10.1.  Normative References  . . . . . . . . . . . . . . . . . .  8
     10.2.  Informative References  . . . . . . . . . . . . . . . . .  9
   Author's Address . . . . . . . . . . . . . . . . . . . . . . . . .  9

1.  Introduction

   RPKI-based origin validation relies on widespread deployment of the
   Resource Public Key Infrastructure (RPKI) [RFC6480].  How the RPKI is
   distributed and maintained globally is a serious concern from many

   The global RPKI is in very initial stages of deployment, there is no
   single root trust anchor, initial testing is being done by the IANA
   and the RIRs, and there are technical testbeds.  It is thought that
   origin validation based on the RPKI will be deployed incrementally
   over the next year to five years.  It is assumed that eventually
   there will be a single root trust anchor for the public address

   Origin validation needs to be done only by an AS's border routers and
   is designed so that it can be used to protect announcements which are
   originated by any network participating in Internet BGP routing:
   large providers, upstreams and down-streams, and by small stub/
   enterprise/edge routers.

   Origin validation has been designed to be deployed on current routers
   without significant hardware upgrade.  It should be used in border
   routers by operators from large backbones to small stub/entetprise/

Bush                    Expires January 31, 2013                [Page 2]

Internet-Draft   RPKI-Based Origin Validation Operation      August 2012

   edge networks.

   RPKI-based origin validation has been designed so that, with prudent
   local routing policies, there is little risk that what is seen as
   today's normal Internet routing is threatened by imprudent deployment
   of the global RPKI, see Section 5.

2.  Suggested Reading

   It is assumed that the reader understands BGP, [RFC4271], the RPKI,
   see [RFC6480], the RPKI Repository Structure, see [RFC6481], Route
   Origin Authorizations (ROAs), see [RFC6482], the RPKI to Router
   Protocol, see [I-D.ietf-sidr-rpki-rtr], RPKI-based Prefix Validation,
   see [I-D.ietf-sidr-pfx-validate], and Ghostbusters Records, see

3.  RPKI Distribution and Maintenance

   The RPKI is a distributed database containing certificates, CRLs,
   manifests, ROAs, and Ghostbusters Records as described in [RFC6481].
   Policies and considerations for RPKI object generation and
   maintenance are discussed elsewhere.

   The RPKI repository design [RFC6481] anticipated an hierarchic
   organization of repositories, as this seriously affects the
   performance of relying parties gathering data.  Publishing parties
   SHOULD implement hierarchic directory structures.

   A local relying party valid cache containing all RPKI data may be
   gathered from the global distributed database using the rsync
   protocol, [RFC5781], and a validation tool such as rcynic [rcynic].

   Validated caches may also be created and maintained from other
   validated caches.  Network operators SHOULD take maximum advantage of
   this feature to minimize load on the global distributed RPKI
   database.  Of course, the recipient relying parties SHOULD re-
   validate the data.

   Timing of inter-cache synchronization, and synchronization between
   caches and the global RPKI, is outside the scope of this document,
   and depends on things such as how often routers feed from the caches,
   how often the operator feels the global RPKI changes significantly,

   As inter-cache synchronization within an operator's network does not
   impact global RPKI resources, an operator MAY choose to synchronize
   quite frequently.

   As RPKI-based origin validation relies on the availability of RPKI
   data, operators SHOULD locate caches close to routers that require
   these data and services.  'Close' is, of course, complex.  One should
   consider trust boundaries, routing bootstrap reachability, latency,

Bush                    Expires January 31, 2013                [Page 3]

Internet-Draft   RPKI-Based Origin Validation Operation      August 2012

   If insecure transports are used between an operator's cache and their
   router(s), the Transport Security recommendations in [I-D.ietf-sidr-
   rpki-rtr] SHOULD be followed.  In particular, operators MUST NOT use
   insecure transports between their routers and RPKI caches located in
   other Autonomous Systems.

   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
   remote, is recommended.

   If an operator trusts upstreams to carry their traffic, they MAY also
   trust the RPKI data those upstreams cache, and SHOULD peer with
   caches made available to them by those upstreams.  Note that this
   places an obligation on those upstreams to maintain fresh and
   reliable caches, and to make them available to their customers.  And,
   as usual, the recipient SHOULD re-validate the data.

   A transit provider or a network with peers SHOULD validate origins in
   announcements made by upstreams, down-streams, and peers.  They still
   SHOULD trust the caches provided by their upstreams.

   Before issuing a ROA for a super-block, an operator MUST ensure that
   all sub-allocations from that block which are announced by other ASs,
   e.g.  customers, have correct ROAs in the RPKI.  Otherwise, issuing a
   ROA for the super-block will cause the announcements of sub-
   allocations with no ROAs to be viewed as Invalid, see [I-D.ietf-sidr-

   Use of RPKI-based origin validation removes any need to originate
   more specifics into BGP to protect against mis-origination of a less
   specific prefix.  Having a ROA for the covering prefix will protect

   To aid translation of ROAs into efficient search algorithms in
   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 excessive max length values in ROAs unless operationally

   One advantage of minimal ROA length is that the forged origin attack
   does not work for sub-prefixes that are not covered by overly long
   max length.  E.g.  if, instead of, one issues
   /16 and, a forged origin attack can not succeed against  They must attack the whole /16, which is more likely
   to be noticed because of its size.

   Therefore, ROA generation software MUST use the prefix length as the
   max length if the user does not specify a max length.

   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
   ROAs for the specific announcements SHOULD be used as opposed to one

Bush                    Expires January 31, 2013                [Page 4]

Internet-Draft   RPKI-Based Origin Validation Operation      August 2012

   ROA with a long max length.

   Operators owning prefix P should issue ROAs for all ASs which may
   announce P.  If a prefix is legitimately announced by more than one
   AS, ROAs for all of the ASs SHOULD be issued so that all are
   considered Valid.

   An environment where private address space is announced in eBGP the
   operator MAY have private RPKI objects which cover these private
   spaces.  This will require a trust anchor created and owned by that
   environment, see [I-D.ietf-sidr-ltamgmt].

   Operators issuing ROAs may have customers which announce their own
   prefixes and ASs into global eBGP but who do not wish to go though
   the work to manage the relevant certificates and ROAs.  Operators
   SHOULD offer to provision the RPKI data for these customers just as
   they provision many other things for them.

   While an operator using RPKI data MAY choose any polling frequency
   they wish for ensuring they have a fresh RPKI cache.  However, if
   they use RPKI data as an input to operational routing decisions, they
   SHOULD ensure local caches inside their AS are synchronized with each
   other at least every four to six hours.

   Operators should use tools which warn them of any impending ROA or
   certificate expiry which could affect the validity of their own data.
   Ghostbuster Records, see [RFC6493], can be used to facilitate contact
   with upstream CAs to effect repair.

4.  Within a Network

   Origin validation need only be done by edge routers in a network,
   those which border other networks/ASs.

   A validating router will use the result of origin validation to
   influence local policy within its network, see Section 5.  In
   deployment this policy should fit into the AS's existing policy,
   preferences, etc.  This allows a network to incrementally deploy
   validation-capable border routers.

   The operator should be aware that RPKI-based origin validation, as
   any other policy change, can cause traffic shifts in their network.
   And, as with normal policy shift practice, a prudent operator has
   tools and methods to predict, measure, modify, etc.

5.  Routing Policy

   Origin validation based on the RPKI marks a received announcement as
   having an origin which is Valid, NotFound, or Invalid, see [I-D.ietf-
   sidr-pfx-validate].  How this is used in routing SHOULD be specified
   by the operator's local policy.

Bush                    Expires January 31, 2013                [Page 5]

Internet-Draft   RPKI-Based Origin Validation Operation      August 2012

   Local policy using relative preference is suggested to manage the
   uncertainty associated with a system in early deployment, applying
   local policy to eliminate the threat of unreachability of prefixes
   due to ill-advised certification policies and/or incorrect
   certification data.  E.g.  until the community feels comfortable
   relying on RPKI data, routing on Invalid origin validity, though at a
   low preference, MAY occur.

   Operators should be aware that accepting Invalid announcements, no
   matter how de-preffed, will often be the equivalent of treating them
   as fully Valid.  Consider having a ROA for AS 42 for prefix
   16-24.  A BGP announcement for 10.0.666.0/24 from AS 666 would be
   Invalid.  But if policy is not configured to discard it, then longest
   match forwarding will send packets to AS 666 no matter the value of
   local preference.

   As origin validation will be rolled out incrementally, coverage will
   be incomplete for a long time.  Therefore, routing on NotFound
   validity state SHOULD be done for a long time.  As the transition
   moves forward, the number of BGP announcements with validation state
   NotFound should decrease.  Hence an operator's policy SHOULD NOT be
   overly strict, and should prefer Valid announcements, attaching a
   lower preference to, but still using, NotFound announcements, and
   dropping or giving a very low preference to Invalid announcements.

   Some providers may choose to set Local-Preference based on the RPKI
   validation result.  Other providers may not want the RPKI validation
   result to be more important than AS-path length -- these providers
   would need to map RPKI validation result to some BGP attribute that
   is evaluated in BGP's path selection process after AS-path is
   evaluated.  Routers implementing RPKI-based origin validation MUST
   provide such options to operators.

   Local-Preference may be used to carry both the validity state of a
   prefix along with it's traffic engineering characteristic(s).  It is
   likely that an operator already using Local-Preference will have to
   change policy so they can encode these two separate characteristics
   in the same BGP attribute without negatively impact or opening
   privilege escalation attacks.

   When using a metric which is also influenced by other local policy,
   an operator should be careful not to create privilege upgrade
   vulnerabilities.  E.g.  if Local Pref is set depending on validity
   state, be careful that peer community signaling MAY NOT upgrade an
   Invalid announcement to Valid or better.

   Announcements with Valid origins SHOULD be preferred over those with
   NotFound or Invalid origins, if the latter are accepted at all.

   Announcements with NotFound origins SHOULD be preferred over those
   with Invalid origins.

Bush                    Expires January 31, 2013                [Page 6]

Internet-Draft   RPKI-Based Origin Validation Operation      August 2012

   Announcements with Invalid origins SHOULD NOT be used, but MAY be
   used to meet special operational needs.  In such circumstances, the
   announcement SHOULD have a lower preference than that given to Valid
   or NotFound.

   Validity state signaling SHOULD NOT be accepted from a neighbor AS.
   The validity state of a received announcement has only local scope
   due to issues such as scope of trust, RPKI synchrony, and [I-D.ietf-

6.  Notes

   Like the DNS, the global RPKI presents only a loosely consistent
   view, depending on timing, updating, fetching, etc.  Thus, one cache
   or router may have different data about a particular prefix than
   another cache or router.  There is no 'fix' for this, it is the
   nature of distributed data with distributed caches.

   Operators should beware that RPKI caches are loosely synchronized,
   even within a single AS.  Thus, changes to the validity state of
   prefixes could be different within an operator's network.  In
   addition, there is no guaranteed interval from when an RPKI cache is
   updated to when that new information may be pushed or pulled into a
   set of routers via this protocol.  This may result in sudden shifts
   of traffic in the operator's network, until all of the routers in the
   AS have reached equilibrium with the validity state of prefixes
   reflected in all of the RPKI caches.

   It is hoped that testing and deployment will produce advice on
   relying party cache loading and timing.

   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
   deprecation of AS-SETs, see [I-D.wkumari-deprecate-as-sets].

   As reliable access to the global RPKI and an operator's caches (and
   possibly other hosts, e.g.  DNS root servers) is important, an
   operator SHOULD take advantage of relying party tools which report
   changes in BGP or RPKI data which would negatively affect validation
   of such prefixes.

   Operators should be aware that there is a trade-off in placement of
   an RPKI repository in address space for which the repository's
   content is authoritative.  On one hand, an operator will wish to
   maximize control over the repository.  On the other hand, if there
   are reachability problems to the address space, changes in the
   repository to correct them may not be easily accessed by others.

   Operators who manage certificates SHOULD associate RPKI Ghostbusters
   Records (see [RFC6493]) with each publication point they control.
   These are publication points holding the CRL, ROAs, and other signed
   objects issued by the operator, and made available to other ASs in
   support of routing on the public Internet.

Bush                    Expires January 31, 2013                [Page 7]

Internet-Draft   RPKI-Based Origin Validation Operation      August 2012

   Routers which perform RPKI-based origin validation must support Four-
   octet AS Numbers (see [RFC4893]), as, among other things, it is not
   reasonable to generate ROAs for AS 23456.

   Software which produces filter lists or other control forms for
   routers where the target router does not support Four-octet AS
   Numbers (see [RFC4893]) must be prepared to accept Four-octet AS
   Numbers and generate the appropriate two-octet output.

   As a router must evaluate certificates and ROAs which are time
   dependent, routers' clocks MUST be correct to a tolerance of
   approximately an hour.

   Servers should provide time service, such as [RFC5905], to client

7.  Security Considerations

   As the BGP origin AS of an update is not signed, origin validation is
   open to malicious spoofing.  Therefore, RPKI-based origin validation
   is expected to deal only with inadvertent mis-advertisement.

   Origin validation does not address the problem of AS-Path validation.
   Therefore paths are open to manipulation, either malicious or

   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
   Section 5 above.

8.  IANA Considerations

   This document has no IANA Considerations.

9.  Acknowledgments

   The author wishes to thank Shane Amante, Rob Austein, Steve Bellovin,
   Jay Borkenhagen, Wes George, Steve Kent, Pradosh Mohapatra, Chris
   Morrow, Sandy Murphy, Keyur Patel, Heather and Jason Schiller, John
   Scudder, Kotikalapudi Sriram, Maureen Stillman, and Dave Ward.

10.  References

10.1.  Normative References

              Reynolds, M., Kent, S. and M. Lepinski, "Local Trust
              Anchor Management for the Resource Public Key
              Infrastructure", Internet-Draft draft-ietf-sidr-
              ltamgmt-05, June 2012.

Bush                    Expires January 31, 2013                [Page 8]

Internet-Draft   RPKI-Based Origin Validation Operation      August 2012

              Mohapatra, P., Scudder, J., Ward, D., Bush, R. and R.
              Austein, "BGP Prefix Origin Validation", Internet-Draft
              draft-ietf-sidr-pfx-validate-08, July 2012.

              Bush, R. and R. Austein, "The RPKI/Router Protocol",
              Internet-Draft draft-ietf-sidr-rpki-rtr-26, February 2012.

   [RFC2119]  Bradner, S., "Key words for use in RFCs to Indicate
              Requirement Levels", BCP 14, RFC 2119, March 1997.

   [RFC4893]  Vohra, Q. and E. Chen, "BGP Support for Four-octet AS
              Number Space", RFC 4893, May 2007.

   [RFC5781]  Weiler, S., Ward, D. and R. Housley, "The rsync URI
              Scheme", RFC 5781, February 2010.

   [RFC6480]  Lepinski, M. and S. Kent, "An Infrastructure to Support
              Secure Internet Routing", RFC 6480, February 2012.

   [RFC6481]  Huston, G., Loomans, R. and G. Michaelson, "A Profile for
              Resource Certificate Repository Structure", RFC 6481,
              February 2012.

   [RFC6482]  Lepinski, M., Kent, S. and D. Kong, "A Profile for Route
              Origin Authorizations (ROAs)", RFC 6482, February 2012.

   [RFC6493]  Bush, R., "The Resource Public Key Infrastructure (RPKI)
              Ghostbusters Record", RFC 6493, February 2012.

10.2.  Informative References

              Kumari, W., "Deprecation of BGP AS_SET, AS_CONFED_SET.",
              Internet-Draft draft-wkumari-deprecate-as-sets-01,
              September 2010.

   [RFC4271]  Rekhter, Y., Li, T. and S. Hares, "A Border Gateway
              Protocol 4 (BGP-4)", RFC 4271, January 2006.

   [RFC5905]  Mills, D., Martin, J., Burbank, J. and W. Kasch, "Network
              Time Protocol Version 4: Protocol and Algorithms
              Specification", RFC 5905, June 2010.

   [rcynic]   "rcynic read-me", , <

Author's Address

Bush                    Expires January 31, 2013                [Page 9]

Internet-Draft   RPKI-Based Origin Validation Operation      August 2012

   Randy Bush
   Internet Initiative Japan
   5147 Crystal Springs
   Bainbridge Island, Washington 98110


Bush                    Expires January 31, 2013               [Page 10]