draft-ietf-bfd-multihop-08.txt   draft-ietf-bfd-multihop-09.txt 
Network Working Group D. Katz Network Working Group D. Katz
Internet Draft Juniper Networks Internet Draft Juniper Networks
Intended status: Proposed Standard D. Ward Intended status: Proposed Standard D. Ward
Cisco Systems Juniper Networks
Expires: April, 2010 October 16, 2009 Expires: July, 2010 January 5, 2010
BFD for Multihop Paths BFD for Multihop Paths
draft-ietf-bfd-multihop-08.txt draft-ietf-bfd-multihop-09.txt
Status of this Memo Status of this Memo
This Internet-Draft is submitted to IETF in full conformance with the This Internet-Draft is submitted to IETF in full conformance with the
provisions of BCP 78 and BCP 79. provisions of BCP 78 and BCP 79.
Internet-Drafts are working documents of the Internet Engineering Internet-Drafts are working documents of the Internet Engineering
Task Force (IETF), its areas, and its working groups. Note that Task Force (IETF), its areas, and its working groups. Note that
other groups may also distribute working documents as Internet- other groups may also distribute working documents as Internet-
Drafts. Drafts.
skipping to change at page 2, line 30 skipping to change at page 2, line 30
method for liveness detection of arbitrary paths between systems. method for liveness detection of arbitrary paths between systems.
The BFD one-hop specification [BFD-1HOP] describes how to use BFD The BFD one-hop specification [BFD-1HOP] describes how to use BFD
across single hops of IPv4 and IPv6. across single hops of IPv4 and IPv6.
BFD can also be useful on arbitrary paths between systems, which may BFD can also be useful on arbitrary paths between systems, which may
span multiple network hops and follow unpredictable paths. span multiple network hops and follow unpredictable paths.
Furthermore, a pair of systems may have multiple paths between them Furthermore, a pair of systems may have multiple paths between them
that may overlap. This document describes methods for using BFD in that may overlap. This document describes methods for using BFD in
such scenarios. such scenarios.
2. Issues 2. Applicability
Please note that BFD is intended as a connectivity check/connection
verification OAM mechanism. It is applicable for network-based
services (e.g. router-to-router, subscriber-to-gateway, LSP/circuit
endpoints and service appliance failure detection). In these
scenarios it is required that the operator correctly provision the
rates at which BFD is transmitted to avoid congestion (e.g link, I/O,
CPU) and false failure detection. It is not applicable for
application-to-application failure detection across the Internet
because it does not have sufficient capability to do necessary
congestion detection and avoidance and therefore cannot prevent
congestion collapse. Host-to-host or application-to-application
deployment across the Internet will require the encapsulation of BFD
within a transport that provides "TCP-friendly" [TFRC] behavior.
3. Issues
There are three primary issues in the use of BFD for multihop paths. There are three primary issues in the use of BFD for multihop paths.
The first is security and spoofing; [BFD-1HOP] describes a The first is security and spoofing; [BFD-1HOP] describes a
lightweight method of avoiding spoofing by requiring a TTL/hop limit lightweight method of avoiding spoofing by requiring a TTL/hop limit
of 255 on both transmit and receive, but this obviously does not work of 255 on both transmit and receive, but this obviously does not work
across multiple hops. The utilization of BFD authentication across multiple hops. The utilization of BFD authentication
addresses this issue. addresses this issue.
The second, more subtle issue is that of demultiplexing multiple BFD The second, more subtle issue is that of demultiplexing multiple BFD
sessions between the same pair of systems to the proper BFD session. sessions between the same pair of systems to the proper BFD session.
skipping to change at page 3, line 16 skipping to change at page 3, line 34
traverse independent physical or logical links--the first packet is traverse independent physical or logical links--the first packet is
demultiplexed based on the link over which it was received. In the demultiplexed based on the link over which it was received. In the
more general case, this scheme cannot work, as two paths over which more general case, this scheme cannot work, as two paths over which
BFD is running may overlap to an arbitrary degree (including the BFD is running may overlap to an arbitrary degree (including the
first and/or last hop.) first and/or last hop.)
Finally, the Echo function MUST NOT be used over multiple hops. Finally, the Echo function MUST NOT be used over multiple hops.
Intermediate hops would route the packets back to the sender, and Intermediate hops would route the packets back to the sender, and
connectivity through the entire path would not be possible to verify. connectivity through the entire path would not be possible to verify.
3. Demultiplexing Packets 4. Demultiplexing Packets
There are a number of possibilities for addressing the demultiplexing There are a number of possibilities for addressing the demultiplexing
issue which may be used, depending on the application. issue which may be used, depending on the application.
3.1. Totally Arbitrary Paths 4.1. Totally Arbitrary Paths
It may be desired to use BFD for liveness detection over paths for It may be desired to use BFD for liveness detection over paths for
which no part of the route is known (or if known, may not be stable.) which no part of the route is known (or if known, may not be stable.)
A straightforward approach to this problem is to limit BFD deployment A straightforward approach to this problem is to limit BFD deployment
to a single session between a source/destination address pair. to a single session between a source/destination address pair.
Multiple sessions between the same pair of systems must have at least Multiple sessions between the same pair of systems must have at least
one endpoint address distinct from one another. one endpoint address distinct from one another.
In this scenario, the initial packet is demultiplexed to the In this scenario, the initial packet is demultiplexed to the
appropriate BFD session based on the source/destination address pair appropriate BFD session based on the source/destination address pair
when Your Discriminator is set to zero. when Your Discriminator is set to zero.
This approach is appropriate for general connectivity detection This approach is appropriate for general connectivity detection
between systems over routed paths, and is also useful for OSPF between systems over routed paths, and is also useful for OSPF
Virtual Links [OSPFv2] [OSPFv3]. Virtual Links [OSPFv2] [OSPFv3].
3.2. Out-of-band Discriminator Signaling 4.2. Out-of-band Discriminator Signaling
Another approach to the demultiplexing problem is to signal the Another approach to the demultiplexing problem is to signal the
discriminator values in each direction through an out-of-band discriminator values in each direction through an out-of-band
mechanism prior to establishing the BFD session. Once learned, the mechanism prior to establishing the BFD session. Once learned, the
discriminators are sent as usual in the BFD Control packets; no discriminators are sent as usual in the BFD Control packets; no
packets with Your Discriminator set to zero are ever sent. This packets with Your Discriminator set to zero are ever sent. This
method is used by the BFD MPLS specification [BFD-MPLS]. method is used by the BFD MPLS specification [BFD-MPLS].
This approach is advantageous because it allows BFD to be directed by This approach is advantageous because it allows BFD to be directed by
other system components that have knowledge of the paths in use, and other system components that have knowledge of the paths in use, and
from the perspective of BFD implementation it is very simple. from the perspective of BFD implementation it is very simple.
The disadvantage is that it requires at least some level of BFD- The disadvantage is that it requires at least some level of BFD-
specific knowledge in parts of the system outside of BFD. specific knowledge in parts of the system outside of BFD.
3.3. Unidirectional Links 4.3. Unidirectional Links
Unidirectional links are classified as multihop paths because the Unidirectional links are classified as multihop paths because the
return path (which should exist at some level in order to make the return path (which should exist at some level in order to make the
link useful) may be arbitrary, and the return paths for BFD sessions link useful) may be arbitrary, and the return paths for BFD sessions
protecting parallel unidirectional links may overlap or even be protecting parallel unidirectional links may overlap or even be
identical. (If two unidirectional links, one in each direction, are identical. (If two unidirectional links, one in each direction, are
to carry a single BFD session, this can be done using the single-hop to carry a single BFD session, this can be done using the single-hop
approach.) approach.)
Either of the two methods outlined earlier may be used in the Either of the two methods outlined earlier may be used in the
skipping to change at page 5, line 5 skipping to change at page 5, line 9
In the Passive role, by definition, the Unidirectional Receiver does In the Passive role, by definition, the Unidirectional Receiver does
not transmit any BFD Control packets until it learns the not transmit any BFD Control packets until it learns the
discriminator value in use by the other system (upon receipt of the discriminator value in use by the other system (upon receipt of the
first BFD Control packet.) The Unidirectional Receiver demultiplexes first BFD Control packet.) The Unidirectional Receiver demultiplexes
the first packet to the proper BFD session based on the physical or the first packet to the proper BFD session based on the physical or
logical link over which was received. This allows the receiver to logical link over which was received. This allows the receiver to
learn the remote discriminator value, which it then echoes back to learn the remote discriminator value, which it then echoes back to
the sender in its own (arbitrarily routed) BFD Control packet, after the sender in its own (arbitrarily routed) BFD Control packet, after
which time all packets are demultiplexed solely by discriminator. which time all packets are demultiplexed solely by discriminator.
4. Encapsulation 5. Encapsulation
The encapsulation of BFD Control packets for multihop application in The encapsulation of BFD Control packets for multihop application in
IPv4 and IPv6 is identical to that defined in [BFD-1HOP], except that IPv4 and IPv6 is identical to that defined in [BFD-1HOP], except that
the UDP destination port MUST have a value of 4784. This can aid in the UDP destination port MUST have a value of 4784. This can aid in
the demultiplexing and internal routing of incoming BFD packets. the demultiplexing and internal routing of incoming BFD packets.
5. Authentication 6. Authentication
By their nature, multihop paths expose BFD to spoofing. As the By their nature, multihop paths expose BFD to spoofing. As the
number of hops increase, the exposure to attack grows. As such, number of hops increase, the exposure to attack grows. As such,
implementations of BFD SHOULD utilize cryptographic authentication implementations of BFD SHOULD utilize cryptographic authentication
over multihop paths to help mitigate denial-of-service attacks. over multihop paths to help mitigate denial-of-service attacks.
Normative References Normative References
[BFD] Katz, D., and Ward, D., "Bidirectional Forwarding Detection", [BFD] Katz, D., and Ward, D., "Bidirectional Forwarding Detection",
draft-ietf-bfd-base-10.txt, October, 2009. draft-ietf-bfd-base-10.txt, January, 2010.
[BFD-1HOP] Katz, D., and Ward, D., "BFD for IPv4 and IPv6 (Single [BFD-1HOP] Katz, D., and Ward, D., "BFD for IPv4 and IPv6 (Single
Hop)", draft-ietf-bfd-v4v6-1hop-10.txt, October, 2009. Hop)", draft-ietf-bfd-v4v6-1hop-11.txt, January, 2010.
[KEYWORD] Bradner, S., "Key words for use in RFCs to Indicate [KEYWORD] Bradner, S., "Key words for use in RFCs to Indicate
Requirement Levels", RFC 2119, March 1997. Requirement Levels", RFC 2119, March 1997.
Informative References Informative References
[BFD-MPLS] Aggarwal, R., Kompella, K., et al, "BFD for MPLS LSPs", [BFD-MPLS] Aggarwal, R., Kompella, K., et al, "BFD for MPLS LSPs",
draft-ietf-bfd-mpls-07.txt, June, 2008. draft-ietf-bfd-mpls-07.txt, June, 2008.
[OSPFv2] Moy, J., "OSPF Version 2", RFC 2328, April 1998. [OSPFv2] Moy, J., "OSPF Version 2", RFC 2328, April 1998.
[OSPFv3] Coltun, R., et al, "OSPF for IPv6", RFC 2740, December 1999. [OSPFv3] Coltun, R., et al, "OSPF for IPv6", RFC 2740, December 1999.
[TFRC] Floyd, S., et al, "TCP Friendly Rate Control (TFRC): Protocol
Specification", RFC 5348, September, 2008.
Security Considerations Security Considerations
As the number of hops increases, BFD becomes further exposed to As the number of hops increases, BFD becomes further exposed to
attack. The use of strong forms of authentication is strongly attack. The use of strong forms of authentication is strongly
encouraged. encouraged.
No additional security issues are raised in this document beyond No additional security issues are raised in this document beyond
those that exist in the referenced BFD documents. those that exist in the referenced BFD documents.
IANA Considerations IANA Considerations
skipping to change at page 6, line 28 skipping to change at page 6, line 40
Authors' Addresses Authors' Addresses
Dave Katz Dave Katz
Juniper Networks Juniper Networks
1194 N. Mathilda Ave. 1194 N. Mathilda Ave.
Sunnyvale, California 94089-1206 USA Sunnyvale, California 94089-1206 USA
Phone: +1-408-745-2000 Phone: +1-408-745-2000
Email: dkatz@juniper.net Email: dkatz@juniper.net
Dave Ward Dave Ward
Cisco Systems Juniper Networks
170 W. Tasman Dr. 1194 N. Mathilda Ave.
San Jose, CA 95134 USA Sunnyvale, California 94089-1206 USA
Phone: +1-408-526-4000 Phone: +1-408-745-2000
Email: dward@cisco.com Email: dward@juniper.net
Changes from the previous draft Changes from the previous draft
The fact that the port number was assigned by IANA was added. All An applicability section was added. All other changes are editorial
other changes are editorial in nature. in nature.
This document expires in April, 2010. This document expires in July, 2010.
 End of changes. 15 change blocks. 
19 lines changed or deleted 38 lines changed or added

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