draft-ietf-sidr-bgpsec-ops-10.txt   draft-ietf-sidr-bgpsec-ops-11.txt 
Network Working Group R. Bush Network Working Group R. Bush
Internet-Draft Internet Initiative Japan Internet-Draft Internet Initiative Japan
Intended status: Best Current Practice June 23, 2016 Intended status: Best Current Practice December 2, 2016
Expires: December 25, 2016 Expires: June 5, 2017
BGPsec Operational Considerations BGPsec Operational Considerations
draft-ietf-sidr-bgpsec-ops-10 draft-ietf-sidr-bgpsec-ops-11
Abstract Abstract
Deployment of the BGPsec architecture and protocols has many Deployment of the BGPsec architecture and protocols has many
operational considerations. This document attempts to collect and operational considerations. This document attempts to collect and
present the most critical and universal. It is expected to evolve as present the most critical and universal. It is expected to evolve as
BGPsec is formalized and initially deployed. BGPsec is formalized and initially deployed.
Requirements Language Requirements Language
skipping to change at page 1, line 41 skipping to change at page 1, line 41
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 December 25, 2016. This Internet-Draft will expire on June 5, 2017.
Copyright Notice Copyright Notice
Copyright (c) 2016 IETF Trust and the persons identified as the Copyright (c) 2016 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 28 skipping to change at page 2, line 28
5. Within a Network . . . . . . . . . . . . . . . . . . . . . . 3 5. Within a Network . . . . . . . . . . . . . . . . . . . . . . 3
6. Considerations for Edge Sites . . . . . . . . . . . . . . . . 4 6. Considerations for Edge Sites . . . . . . . . . . . . . . . . 4
7. Routing Policy . . . . . . . . . . . . . . . . . . . . . . . 4 7. Routing Policy . . . . . . . . . . . . . . . . . . . . . . . 4
8. Notes . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6 8. Notes . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6
9. Security Considerations . . . . . . . . . . . . . . . . . . . 7 9. Security Considerations . . . . . . . . . . . . . . . . . . . 7
10. IANA Considerations . . . . . . . . . . . . . . . . . . . . . 7 10. IANA Considerations . . . . . . . . . . . . . . . . . . . . . 7
11. Acknowledgments . . . . . . . . . . . . . . . . . . . . . . . 7 11. Acknowledgments . . . . . . . . . . . . . . . . . . . . . . . 7
12. References . . . . . . . . . . . . . . . . . . . . . . . . . 7 12. References . . . . . . . . . . . . . . . . . . . . . . . . . 7
12.1. Normative References . . . . . . . . . . . . . . . . . . 7 12.1. Normative References . . . . . . . . . . . . . . . . . . 7
12.2. Informative References . . . . . . . . . . . . . . . . . 8 12.2. Informative References . . . . . . . . . . . . . . . . . 8
Author's Address . . . . . . . . . . . . . . . . . . . . . . . . 8 Author's Address . . . . . . . . . . . . . . . . . . . . . . . . 9
1. Introduction 1. Introduction
BGPsec, [I-D.ietf-sidr-bgpsec-overview], is a new protocol with many BGPsec, [I-D.ietf-sidr-bgpsec-protocol], is a new protocol with many
operational considerations. It is expected to be deployed operational considerations. It is expected to be deployed
incrementally over a number of years. As core BGPsec-capable routers incrementally over a number of years. As core BGPsec-capable routers
may require large memory and/or modern CPUs, it is thought that may require large memory and/or modern CPUs, it is thought that
origin validation based on the RPKI, [RFC6811], will occur over the origin validation based on the RPKI, [RFC6811], will occur over some
next two to three years and that BGPsec will start to deploy well years and that BGPsec will start to deploy after that.
after that.
BGPsec relies on widespread propagation of the Resource Public Key BGPsec relies on widespread propagation of the Resource Public Key
Infrastructure (RPKI) [RFC6480]. How the RPKI is distributed and Infrastructure (RPKI) [RFC6480]. How the RPKI is distributed and
maintained globally and within an operator's infrastructure may be maintained globally and within an operator's infrastructure may be
different for BGPsec than for origin validation. different for BGPsec than for origin validation.
BGPsec needs to be spoken only by an AS's eBGP speaking, AKA border, BGPsec needs to be spoken only by an AS's eBGP speaking, AKA border,
routers, and is designed so that it can be used to protect routers, and is designed so that it can be used to protect
announcements which are originated by resource constrained edge announcements which are originated by resource constrained edge
routers. This has special operational considerations. routers. This has special operational considerations.
skipping to change at page 3, line 46 skipping to change at page 3, line 46
pre-provision each router's 'next' key in the RPKI so there is no pre-provision each router's 'next' key in the RPKI so there is no
propagation delay for provisioning the new key. propagation delay for provisioning the new key.
5. Within a Network 5. Within a Network
BGPsec is spoken by edge routers in a network, those which border BGPsec is spoken by edge routers in a network, those which border
other networks/ASs. other networks/ASs.
In a fully BGPsec enabled AS, Route Reflectors MUST have BGPsec In a fully BGPsec enabled AS, Route Reflectors MUST have BGPsec
enabled if and only if there are eBGP speakers in their client cone, enabled if and only if there are eBGP speakers in their client cone,
i.e. an RR client or the transitive closure of their customers' i.e. an RR client or the transitive closure of a client's customers'
customers' customers' etc. customers' customers' etc.
A BGPsec capable router MAY use the data it receives to influence A BGPsec capable router MAY use the data it receives to influence
local policy within its network, see Section 7. In deployment this local policy within its network, see Section 7. In deployment this
policy should fit into the AS's existing policy, preferences, etc. policy should fit into the AS's existing policy, preferences, etc.
This allows a network to incrementally deploy BGPsec enabled border This allows a network to incrementally deploy BGPsec enabled border
routers. routers.
eBGP speakers which face more critical peers or up/downstreams would eBGP speakers which face more critical peers or up/downstreams would
skipping to change at page 4, line 22 skipping to change at page 4, line 22
The operator should be aware that BGPsec, as any other policy change, The operator should be aware that BGPsec, as any other policy change,
can cause traffic shifts in their network. And, as with normal can cause traffic shifts in their network. And, as with normal
policy shift practice, a prudent operator has tools and methods to policy shift practice, a prudent operator has tools and methods to
predict, measure, modify, etc. predict, measure, modify, etc.
On the other hand, an operator wanting to monitor router loading, On the other hand, an operator wanting to monitor router loading,
shifts in traffic, etc. might deploy incrementally while watching shifts in traffic, etc. might deploy incrementally while watching
those and similar effects. those and similar effects.
As they are not formally verifiable, an eBGP listener SHOULD NOT BGPsec does not sign over communities, so they are not formally
strongly trust unsigned security markings such as communities trustable. Additionally, outsourcing verification is not prudent
received across a trust boundary. security practice. Therefore an eBGP listener SHOULD NOT strongly
trust unsigned security signaling, such as communities, received
across a trust boundary.
6. Considerations for Edge Sites 6. Considerations for Edge Sites
An edge site which does not provide transit and trusts its An edge site which does not provide transit and trusts its
upstream(s) SHOULD only originate a signed prefix announcement and upstream(s) SHOULD only originate a signed prefix announcement and
need not validate received announcements. need not validate received announcements.
Operators might need to use hardware with limited resources. In such Operators might need to use hardware with limited resources. In such
cases, BGPsec protocol capability negotiation allows for a resource cases, BGPsec protocol capability negotiation allows for a resource
constrained edge router to hold only its own signing key(s) and sign constrained edge router to hold only its own signing key(s) and sign
skipping to change at page 5, line 7 skipping to change at page 5, line 9
7. Routing Policy 7. Routing Policy
Unlike origin validation based on the RPKI, BGPsec marks a received Unlike origin validation based on the RPKI, BGPsec marks a received
announcement as Valid or Not Valid, there is no explicit NotFound announcement as Valid or Not Valid, there is no explicit NotFound
state. In some sense, an unsigned BGP4 path is the equivalent of state. In some sense, an unsigned BGP4 path is the equivalent of
NotFound. How this is used in routing is up to the operator's local NotFound. How this is used in routing is up to the operator's local
policy, similar to origin validation as in [RFC6811]. policy, similar to origin validation as in [RFC6811].
As BGPsec will be rolled out over years and does not allow for As BGPsec will be rolled out over years and does not allow for
intermediate non-signing edge routers, coverage will be spotty for a intermediate non-signing edge routers, coverage will be spotty for a
long time. Hence a normal operator's policy SHOULD NOT be overly long time. This presents a dilemma; should a router evaluating an
strict, perhaps preferring Valid paths and giving very low inbound BGPsec_Path as Not Valid be very strict and discard it? On
preference, but still using, Not Valid paths. the other hand, it might be the only path to that prefix, and a very
low local-preference would cause it to be used and propagated only if
there was no alternative. Either choice is reasonable, but we
recommend dropping because of the next point.
Operators should be aware that accepting Not Valid announcements, no Operators should be aware that accepting Not Valid announcements, no
matter the local preference, will often be the equivalent of treating matter the local preference, will often be the equivalent of treating
them as fully Valid. Local preference affects only routes to the them as fully Valid. Local preference affects only routes to the
same set of destinations. Consider having a Valid announcement from same set of destinations. Consider having a Valid announcement from
neighbor V for prefix 10.0.0.0/16 and an Not Valid announcement for neighbor V for prefix 10.0.0.0/16 and an Not Valid announcement for
10.0.666.0/24 from neighbor I. If local policy on the router is not 10.0.666.0/24 from neighbor I. If local policy on the router is not
configured to discard the Not Valid announcement from I, then longest configured to discard the Not Valid announcement from I, then longest
match forwarding will send packets to neighbor I no matter the value match forwarding will send packets to neighbor I no matter the value
of local preference. of local preference.
skipping to change at page 5, line 33 skipping to change at page 5, line 38
Local policy on the eBGP edge MAY convey the validation state of a Local policy on the eBGP edge MAY convey the validation state of a
BGP signed path through normal local policy mechanisms, e.g. setting BGP signed path through normal local policy mechanisms, e.g. setting
a BGP community for internal use, or modifying a metric value such as a BGP community for internal use, or modifying a metric value such as
local-preference or MED. Some may choose to use the large Local-Pref local-preference or MED. Some may choose to use the large Local-Pref
hammer. Others may choose to let AS-Path rule and set their internal hammer. Others may choose to let AS-Path rule and set their internal
metric, which comes after AS-Path in the BGP decision process. metric, which comes after AS-Path in the BGP decision process.
Because of possible RPKI version skew, an AS Path which does not Because of possible RPKI version skew, an AS Path which does not
validate at router R0 might validate at R1. Therefore, signed paths validate at router R0 might validate at R1. Therefore, signed paths
that are Not Valid and yet propagated (because they are chosen as that are Not Valid and yet propagated (because they are chosen as
best path) SHOULD have their signatures kept intact and MUST be best path) should have their signatures left intact and MUST be
signed if sent to external BGPsec speakers. signed if sent to external BGPsec speakers.
This implies that updates which a speaker judges to be Not Valid MAY This implies that updates which a speaker judges to be Not Valid MAY
be propagated to iBGP peers. Therefore, unless local policy ensures be propagated to iBGP peers. Therefore, unless local policy ensures
otherwise, a signed path learned via iBGP MAY be Not Valid. If otherwise, a signed path learned via iBGP MAY be Not Valid. If
needed, the validation state should be signaled by normal local needed, the validation state should be signaled by normal local
policy mechanisms such as communities or metrics. policy mechanisms such as communities or metrics.
On the other hand, local policy on the eBGP edge might preclude iBGP On the other hand, local policy on the eBGP edge might preclude iBGP
or eBGP announcement of signed AS Paths which are Not Valid. or eBGP announcement of signed AS Paths which are Not Valid.
A BGPsec speaker receiving a path SHOULD perform origin validation A BGPsec speaker receiving a path SHOULD perform origin validation
per [RFC6811] and [RFC7115]. per [RFC6811] and [RFC7115].
A route server is usually 'transparent'. To operate transparently in A route server is usually 'transparent', i.e. does not insert an AS
an environment in which the route server connects BGPsec-enabled into the path so as not to increase the AS hop count and thereby
peers, the route server MUST run BGPsec as well. A BGPsec-aware affect downstream path choices. But, with BGPsec, a client router R
route server needs to validate the incoming BGPsec_Path, and to needs to be able to validate paths which are forward signed to R.
forward updates which can be validated by clients which know the But the sending router can not generate signatures to all the
route server's AS. This implies that the route server creates possible clients. Therefore a BGPsec-aware route server needs to
signatures per client including its own AS in the BGPsec_Path and the validate the incoming BGPsec_Path, and to forward updates which can
target ASes, see 2.2.2 of [I-D.ietf-idr-ix-bgp-route-server]. The be validated by clients which must therefore know the route server's
route server uses pCount of zero to not increase the effective AS hop AS. This implies that the route server creates signatures per client
count. including its own AS in the BGPsec_Path, forward signing to each
client AS, see [I-D.ietf-sidr-bgpsec-protocol]. The route server
uses pCount of zero to not increase the effective AS hop count,
thereby retaining the intent of 'transparency'.
If it is known that a BGPsec neighbor is not a transparent route If it is known that a BGPsec neighbor is not a transparent route
server, and the router provides a knob to disallow a received pCount server, or is otherwise validly using pCount=0 (e,g, see
(prepend count, zero for transparent route servers) of zero, that [I-D.ietf-sidr-as-migration]), and the router provides a knob to
knob SHOULD be applied. Routers should disallow pCount 0 by default. disallow a received pCount (of zero, that knob SHOULD be applied.
Routers should disallow pCount 0 by default.
To prevent exposure of the internals of BGP Confederations [RFC5065], To prevent exposure of the internals of BGP Confederations [RFC5065],
a BGPsec speaker which is a Member-AS of a Confederation MUST NOT a BGPsec speaker which is a Member-AS of a Confederation MUST NOT
sign updates sent to another Member-AS of the same Confederation. sign updates sent to another Member-AS of the same Confederation.
8. Notes 8. Notes
For protection from attacks replaying BGP data on the order of a day For protection from attacks replaying BGP data on the order of a day
or longer old, re-keying routers with new keys (previously) or longer old, re-keying routers with new keys (previously)
provisioned in the RPKI is sufficient. For one approach, see provisioned in the RPKI is sufficient. For one approach, see
skipping to change at page 6, line 43 skipping to change at page 7, line 4
Records (see [RFC6493]), signed indirectly by End Entity Records (see [RFC6493]), signed indirectly by End Entity
certificates, for those certificates on which others' routing depends certificates, for those certificates on which others' routing depends
for certificate and/or ROA validation. for certificate and/or ROA validation.
Operators should be aware of impending algorithm transitions, which Operators should be aware of impending algorithm transitions, which
will be rare and slow-paced, see [RFC6916]. They should work with will be rare and slow-paced, see [RFC6916]. They should work with
their vendors to ensure support for new algorithms. their vendors to ensure support for new algorithms.
As a router must evaluate certificates and ROAs which are time As a router must evaluate certificates and ROAs which are time
dependent, routers' clocks MUST be correct to a tolerance of dependent, routers' clocks MUST be correct to a tolerance of
approximately an hour. approximately an hour. The common approach is for operators to
deploy servers that provide time service, such as [RFC5905], to
client routers.
If a router has reason to believe its clock is seriously incorrect, If a router has reason to believe its clock is seriously incorrect,
e.g. it has a time earlier than 2011, it SHOULD NOT attempt to e.g. it has a time earlier than 2011, it SHOULD NOT attempt to
validate incoming updates. It SHOULD defer validation until it validate incoming updates. It SHOULD defer validation until it
believes it is within reasonable time tolerance. believes it is within reasonable time tolerance.
Operators should deploy servers that provide time service, such as
[RFC5905], to client routers.
9. Security Considerations 9. Security Considerations
The major security considerations for the BGPsec protocol are This document describes operational considerations for the deployment
described in [I-D.ietf-sidr-bgpsec-protocol]. of BGPsec. The security considerations for BGPsec are described in
[I-D.ietf-sidr-bgpsec-protocol].
10. IANA Considerations 10. IANA Considerations
This document has no IANA Considerations. This document has no IANA Considerations.
11. Acknowledgments 11. Acknowledgments
The author wishes to thank the BGPsec design group, Thomas King, and The author wishes to thank the BGPsec design group, Thomas King,
Arnold Nipper. Arnold Nipper, and Alvaro Retana.
12. References 12. References
12.1. Normative References 12.1. Normative References
[I-D.ietf-sidr-bgpsec-overview]
Lepinski, M. and S. Turner, "An Overview of BGPSEC",
draft-ietf-sidr-bgpsec-overview-02 (work in progress), May
2012.
[I-D.ietf-sidr-bgpsec-protocol] [I-D.ietf-sidr-bgpsec-protocol]
Lepinski, M., "BGPSEC Protocol Specification", draft-ietf- Lepinski, M., "BGPSEC Protocol Specification", draft-ietf-
sidr-bgpsec-protocol-07 (work in progress), February 2013. sidr-bgpsec-protocol-07 (work in progress), February 2013.
[RFC2119] Bradner, S., "Key words for use in RFCs to Indicate [RFC2119] Bradner, S., "Key words for use in RFCs to Indicate
Requirement Levels", BCP 14, RFC 2119, March 1997. Requirement Levels", BCP 14, RFC 2119, March 1997.
[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) [RFC6493] Bush, R., "The Resource Public Key Infrastructure (RPKI)
Ghostbusters Record", RFC 6493, February 2012. Ghostbusters Record", RFC 6493, February 2012.
[RFC6811] Mohapatra, P., Scudder, J., Ward, D., Bush, R., and R.
Austein, "BGP Prefix Origin Validation", RFC 6811, January
2013.
[RFC7115] Bush, R., "Origin Validation Operation Based on the [RFC7115] Bush, R., "Origin Validation Operation Based on the
Resource Public Key Infrastructure (RPKI)", BCP 185, Resource Public Key Infrastructure (RPKI)", BCP 185,
RFC 7115, DOI 10.17487/RFC7115, January 2014, RFC 7115, DOI 10.17487/RFC7115, January 2014,
<http://www.rfc-editor.org/info/rfc7115>. <http://www.rfc-editor.org/info/rfc7115>.
12.2. Informative References 12.2. Informative References
[I-D.ietf-idr-ix-bgp-route-server] [I-D.ietf-sidr-as-migration]
Jasinska, E., Hilliard, N., Raszuk, R., and N. Bakker, George, W. and S. Murphy, "BGPSec Considerations for AS
"Internet Exchange Route Server", draft-ietf-idr-ix-bgp- Migration", draft-ietf-sidr-as-migration-05 (work in
route-server-02 (work in progress), February 2013. progress), April 2016.
[I-D.ietf-sidr-bgpsec-overview]
Lepinski, M. and S. Turner, "An Overview of BGPSEC",
draft-ietf-sidr-bgpsec-overview-02 (work in progress), May
2012.
[I-D.ietf-sidr-bgpsec-rollover] [I-D.ietf-sidr-bgpsec-rollover]
Gagliano, R., Patel, K., and B. Weis, "BGPSEC router key Gagliano, R., Patel, K., and B. Weis, "BGPSEC router key
rollover as an alternative to beaconing", draft-ietf-sidr- rollover as an alternative to beaconing", draft-ietf-sidr-
bgpsec-rollover-01 (work in progress), October 2012. bgpsec-rollover-01 (work in progress), October 2012.
[I-D.ietf-sidr-rtr-keying] [I-D.ietf-sidr-rtr-keying]
Turner, S., Patel, K., and R. Bush, "Router Keying for Turner, S., Patel, K., and R. Bush, "Router Keying for
BGPsec", draft-ietf-sidr-rtr-keying-01 (work in progress), BGPsec", draft-ietf-sidr-rtr-keying-01 (work in progress),
February 2013. February 2013.
skipping to change at page 8, line 32 skipping to change at page 8, line 37
[RFC4271] Rekhter, Y., Li, T., and S. Hares, "A Border Gateway [RFC4271] Rekhter, Y., Li, T., and S. Hares, "A Border Gateway
Protocol 4 (BGP-4)", RFC 4271, January 2006. Protocol 4 (BGP-4)", RFC 4271, January 2006.
[RFC5065] Traina, P., McPherson, D., and J. Scudder, "Autonomous [RFC5065] Traina, P., McPherson, D., and J. Scudder, "Autonomous
System Confederations for BGP", RFC 5065, August 2007. System Confederations for BGP", RFC 5065, August 2007.
[RFC5905] Mills, D., Martin, J., Burbank, J., and W. Kasch, "Network [RFC5905] Mills, D., Martin, J., Burbank, J., and W. Kasch, "Network
Time Protocol Version 4: Protocol and Algorithms Time Protocol Version 4: Protocol and Algorithms
Specification", RFC 5905, June 2010. Specification", RFC 5905, June 2010.
[RFC6811] Mohapatra, P., Scudder, J., Ward, D., Bush, R., and R. [RFC6480] Lepinski, M. and S. Kent, "An Infrastructure to Support
Austein, "BGP Prefix Origin Validation", RFC 6811, January Secure Internet Routing", RFC 6480, February 2012.
2013.
[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.
[RFC6916] Gagliano, R., Kent, S., and S. Turner, "Algorithm Agility [RFC6916] Gagliano, R., Kent, S., and S. Turner, "Algorithm Agility
Procedure for the Resource Public Key Infrastructure Procedure for the Resource Public Key Infrastructure
(RPKI)", BCP 182, RFC 6916, DOI 10.17487/RFC6916, April (RPKI)", BCP 182, RFC 6916, DOI 10.17487/RFC6916, April
2013, <http://www.rfc-editor.org/info/rfc6916>. 2013, <http://www.rfc-editor.org/info/rfc6916>.
Author's Address Author's Address
Randy Bush Randy Bush
Internet Initiative Japan Internet Initiative Japan
 End of changes. 21 change blocks. 
60 lines changed or deleted 68 lines changed or added

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