Internet DRAFT - draft-mmm-bfd-on-lags
draft-mmm-bfd-on-lags
Network Working Group M. Bhatia, Ed.
Internet-Draft Alcatel-Lucent
Intended status: Standards Track M. Chen, Ed.
Expires: August 4, 2012 Huawei Technologies
S. Boutros, Ed.
M. Binderberger, Ed.
Cisco Systems
J. Haas, Ed.
Juniper Networks
February 1, 2012
Bidirectional Forwarding Detection (BFD) on Link Aggregation Group (LAG)
Interfaces
draft-mmm-bfd-on-lags-03
Abstract
This document proposes a mechanism to run BFD on Link Aggregation
Group (LAG) interfaces. It does so by running an independent BFD
async session on every LAG member link.
The mechanism allows to verify the link connectivity, either in
combination with or in absence of LACP, with a shorter detection time
than what LACP offers. The connectivity check can also cover
elements of layer 3.
A dedicated well-known UDP port is introduced that all BFD packets
over member links use to disambiguate those from ordinary BFD
packets.
Requirements Language
The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT",
"SHOULD", "SHOULD NOT", "RECOMMENDED", "MAY", and "OPTIONAL" in this
document are to be interpreted as described in RFC 2119 [RFC2119].
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 http://datatracker.ietf.org/drafts/current/.
Internet-Drafts are draft documents valid for a maximum of six months
Bhatia, et al. Expires August 4, 2012 [Page 1]
Internet-Draft BFD for LAG Interfaces February 2012
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 August 4, 2012.
Copyright Notice
Copyright (c) 2012 IETF Trust and the persons identified as the
document authors. All rights reserved.
This document is subject to BCP 78 and the IETF Trust's Legal
Provisions Relating to IETF Documents
(http://trustee.ietf.org/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.
Bhatia, et al. Expires August 4, 2012 [Page 2]
Internet-Draft BFD for LAG Interfaces February 2012
Table of Contents
1. Introduction . . . . . . . . . . . . . . . . . . . . . . . . . 4
2. BFD on LAG member links . . . . . . . . . . . . . . . . . . . 4
2.1. Micro BFD async session address family . . . . . . . . . . 5
2.2. Micro BFD async session negotiation . . . . . . . . . . . 5
3. LAG Management Module . . . . . . . . . . . . . . . . . . . . 6
3.1. BFD in the presence of LACP . . . . . . . . . . . . . . . 6
3.2. BFD in the absence of LACP . . . . . . . . . . . . . . . . 7
3.3. Handling Exceptions . . . . . . . . . . . . . . . . . . . 7
4. BFD on LAG members and layer-3 applications . . . . . . . . . 7
5. Detecting a member link failure . . . . . . . . . . . . . . . 7
6. Security Consideration . . . . . . . . . . . . . . . . . . . . 8
7. IANA Considerations . . . . . . . . . . . . . . . . . . . . . 8
8. Acknowledgements . . . . . . . . . . . . . . . . . . . . . . . 8
9. Contributing authors . . . . . . . . . . . . . . . . . . . . . 8
10. References . . . . . . . . . . . . . . . . . . . . . . . . . . 9
10.1. Normative References . . . . . . . . . . . . . . . . . . . 9
10.2. Informative References . . . . . . . . . . . . . . . . . . 9
Authors' Addresses . . . . . . . . . . . . . . . . . . . . . . . . 10
Bhatia, et al. Expires August 4, 2012 [Page 3]
Internet-Draft BFD for LAG Interfaces February 2012
1. Introduction
The Bidirectional Forwarding Detection (BFD) protocol [RFC5880]
provides a mechanism to detect faults in the bidirectional path
between two forwarding engines, including interfaces, data link(s),
and to the extent possible the forwarding engines themselves, with
potentially very low latency. BFD protocol provides as well a fast
mechanism for detecting communication failures on any data links and
the protocol can run over any media and at any protocol layer.
Link aggregation (LAG) as defined in [IEEE802.1AX] provides
mechanisms to combine multiple physical links to a single logical
link. The goal is to provide higher bandwidth with the aggregated
logical link and better resiliency, since if one of the physical
member links fails, the aggregate logical link can continue to
forward traffic over the remaining operational physical member links.
Currently Link aggregation control protocol (LACP) is used to detect
failures on a per physical member link. However, the use of BFD for
failure detection would (1) provide a faster detection (2) provide
detection in the absence of LACP (3) and would be able to verify L3
connectivity per member link.
Running a single BFD session over the LAG virtual port, and without
internal knowledge of the LAG virtual port physical members, will
make it impossible for BFD to guarantee a detection of the physical
member link failures.
The goal is to verify every member link connectivity.
The approach is to run BFD async session over each member link and
make BFD control whether the member link should be part of the L2
Loadbalance table of the LAG virtual port in the presence and in the
absence of LACP.
This document describes how to establish a BFD async session per
physical member link of the Link Aggregation (LAG) virtual port.
While there are native Ethernet mechanisms to detect failures
(802.1ax, .3ah) that could be used for LAG, the solution proposed in
this document enables operators who have already deployed BFD over
different technologies (e.g. IP, MPLS) to use a common failure
detection mechanism.
2. BFD on LAG member links
The mechanism proposed for a fast detection of LAG member link
Bhatia, et al. Expires August 4, 2012 [Page 4]
Internet-Draft BFD for LAG Interfaces February 2012
failure is running BFD async sessions on every LAG member link. We
call these per LAG member link BFD sessions as micro BFD sessions in
the rest of this document.
2.1. Micro BFD async session address family
Only one address family MUST be used for all micro BFD async sessions
running on all LAG member links. i.e. all member link async BFD
sessions MUST either use IPv4 or IPv6.
2.2. Micro BFD async session negotiation
A single micro BFD session runs on each member link of the LAG. The
micro BFD async sessions negotiation MUST follow the same procedures
defined in [RFC5880] and [RFC5881].
Only asynchronous mode is considered in this document. The echo
function is outside the document's scope. At least one system MUST
take the Active role (possibly both). The micro BFD sessions on the
member links are independent BFD sessions. They use their own
unique, local discriminator values, maintain their own set of state
variables and have their own independent state machine. Timer values
MAY be different, even among the micro BFD sessions belonging to the
same LAG virtual port, although it is expected that micro BFD
sessions belonging to the same LAG virtual port use the same timer
values.
The demultiplexing of a received packet is solely based on the Your
Discriminator field, if this field is nonzero. For the initial Down
BFD packets of a BFD session this value may be zero. In this case
demultiplexing MUST be based on some combination of other fields
which MUST include the interface information of the member link.
When receiving a BFD packet for a micro session with a valid, non-
zero Your Discriminator, a check MUST be done if the packet was
received on the correct member link interface. If the check fails
then the packet MUST be discarded. This needs to be done before
state variables for the BFD sessions are updated by the received
packet.
The BFD Control packets for each micro BFD session are IP/UDP
encapsulated as defined in [RFC5881], but with a new UDP destination
port "BfdBndlPort" (to be assigned by IANA). Control packets use a
destination IP address that is the peer's remote IP address. The
details of how this destination IP address is learnt is outside the
scope of the document .
On Ethernet-based LAG member links the destination MAC is a dedicated
Bhatia, et al. Expires August 4, 2012 [Page 5]
Internet-Draft BFD for LAG Interfaces February 2012
MAC address (to be assigned by IANA according to [RFC5342]) to be the
immediate next hop. This will be used for the initial BFD down
packets of a session, while sending BFD Init and Up packets with the
MAC address learned from the received BFD packets.
On Ethernet-based LAG member links the source MAC is the embedded MAC
address of the port transmitting the packet.
This mechanism helps to reduce the use of additional MAC addresses,
which reduces the requirements for the Ethernet hardware on the
receiving port.
3. LAG Management Module
The LAG Management Module (LMM) could be envisaged as a client of
BFD, i.e. the LMM requests a micro BFD session per member link.
LMM then uses the micro BFD session state, in addition to LACP state,
to monitor the health of the individual members links of the LAG.
The micro BFD session for a particular port MUST be requested when
the port is attached to an aggregator. The session MUST be deleted
when the port is detached from the aggregator.
3.1. BFD in the presence of LACP
Once LACP has determined that a link is suitable for aggregation
within its selected LAG, and has completed negotiations with the
partner device so as to bring that link to Distributing state, at
that point the micro BFD session can be started on the link.
BFD, as a layer 3 protocol, is viewed as running across the LAG, with
load balancing constraints ensuring particular micro BFD sessions are
effectively bound to particular member links.
Although the link is in LACP Distributing state it should not be used
for carrying traffic other than the micro BFD session. BFD is used
to verify that a link is ready to be an active member of its LAG for
the purpose of carrying LAG level data traffic. Only when the micro
BFD session is up should the link become active for forwarding
general traffic over the bundle.
In all cases where a micro BFD session goes down the corresponding
link is removed from the active set of members of the bundle.
LACP remains in Distributing state as BFD runs above the LACP layer
but the link is inactive until such time as the micro BFD session is
Bhatia, et al. Expires August 4, 2012 [Page 6]
Internet-Draft BFD for LAG Interfaces February 2012
restored. This applies also to the case where a BFD session is
started on an existing active link and the BFD session never comes
up.
3.2. BFD in the absence of LACP
Use of LACP for link aggregation, is strictly optional. It is
equally possible to use no aggregation control protocol and to step
directly from the layer 1 or layer 2 OAM state becoming operational
to starting the micro BFD session.
3.3. Handling Exceptions
A possible exception to this would apply if the BFD over LAG feature
were provisioned after the link was already active within the LAG.
In such cases it may be desirable to retain the link in its active
status to avoid disruption to traffic forwarding while the micro BFD
session is brought up.
Another exception is when the BFD over LAG feature is un-provisioned
after links were already BFD validated and active within the LAG. In
such case, it may be desirable to retain those links in their active
status to avoid disruption to traffic forwarding since expectation is
that the peer device will soon un-provision the BFD over LAG feature.
Note that if one device is not operating a micro BFD session on a
link, while the other device is and perceives the session to be down,
this will result in the two devices having a different view of the
status of the link. This would likely lead to traffic loss across
the LAG.
The use of another protocol to bootstrap BFD can detect such
mismatched config, since the side that's not configured can send a
rejection error.
4. BFD on LAG members and layer-3 applications
Layer 3 protocols like e.g. OSPF may use a micro BFD session to
detect failures on the LAG virtual port, or may establish a new BFD
session over the logical LAG virtual port.
5. Detecting a member link failure
When a micro BFD session goes down then this member link MUST be
taken out of the LAG L2 load balance table.
Bhatia, et al. Expires August 4, 2012 [Page 7]
Internet-Draft BFD for LAG Interfaces February 2012
6. Security Consideration
This document does not introduce any additional security issues and
the security mechanisms defined in [RFC5880] apply in this document.
7. IANA Considerations
The IANA is requested to assign a well-known port number for the UDP
encapsulated micro BFD sessions. IANA is also requested to assign a
dedicated MAC address according to RFC 5342 [RFC5342].
8. Acknowledgements
We would like to thank Dave Katz, Alexander Vainshtein, Greg Mirsky
and Jeff Tantsura for their comments.
The initial event to start the current discussion was the
distribution of draft-chen-bfd-interface-00.
9. Contributing authors
Paul Hitchen
BT
Email: paul.hitchen@bt.com
George Swallow
Cisco Systems
Email: swallow@cisco.com
Wim Henderickx
Alcatel-Lucent
Email: wim.henderickx@alcatel-lucent.com
Nobo Akiya
Cisco Systems
Email: nobo@cisco.com
Neil Ketley
Cisco Systems
Email: nketley@cisco.com
Carlos Pignataro
Cisco Systems
Email: cpignata@cisco.com
Bhatia, et al. Expires August 4, 2012 [Page 8]
Internet-Draft BFD for LAG Interfaces February 2012
Nitin Bahadur
Juniper Networks
Email: nitinb@juniper.net
Zuliang Wang
Huawei Technologies
Email: liang_tsing@huawei.com
Liang Guo
China Telecom
Email: guoliang@gsta.com
Jeff Tantsura
Ericsson
Email: jeff.tantsura@ericsson.com
10. References
10.1. Normative References
[RFC2119] Bradner, S., "Key words for use in RFCs to Indicate
Requirement Levels", BCP 14, RFC 2119, March 1997.
[RFC5880] Katz, D. and D. Ward, "Bidirectional Forwarding Detection
(BFD)", RFC 5880, June 2010.
[RFC5881] Katz, D. and D. Ward, "Bidirectional Forwarding Detection
(BFD) for IPv4 and IPv6 (Single Hop)", RFC 5881,
June 2010.
[RFC5882] Katz, D. and D. Ward, "Generic Application of
Bidirectional Forwarding Detection (BFD)", RFC 5882,
June 2010.
10.2. Informative References
[IEEE802.1AX]
IEEE Std. 802.1AX, "IEEE Standard for Local and
metropolitan area networks - Link Aggregation",
November 2008.
[RFC5342] Eastlake, D., "IANA Considerations and IETF Protocol Usage
for IEEE 802 Parameters", BCP 141, RFC 5342,
September 2008.
Bhatia, et al. Expires August 4, 2012 [Page 9]
Internet-Draft BFD for LAG Interfaces February 2012
Authors' Addresses
Manav Bhatia (editor)
Alcatel-Lucent
Bangalore 560045
India
Email: manav.bhatia@alcatel-lucent.com
Mach(Guoyi) Chen (editor)
Huawei Technologies
Q14 Huawei Campus, No. 156 Beiqing Road, Hai-dian District
Beijing 100095
China
Email: mach@huawei.com
Sami Boutros (editor)
Cisco Systems
Email: sboutros@cisco.com
Marc Binderberger (editor)
Cisco Systems
Email: mbinderb@cisco.com
Jeffrey Haas (editor)
Juniper Networks
Email: jhaas@juniper.net
Bhatia, et al. Expires August 4, 2012 [Page 10]