draft-ietf-magma-mld-source-03.txt   draft-ietf-magma-mld-source-04.txt 
MAGMA Working Group B. Haberman MAGMA Working Group B. Haberman
draft-ietf-magma-mld-source-03.txt Caspian Networks draft-ietf-magma-mld-source-04.txt Caspian Networks
Expires April 2003 October 2002 Expires June 2003 December 2002
Source Address Selection for Multicast Source Address Selection for Multicast
Listener Discovery Protocol (RFC 2710) Listener Discovery Protocol (RFC 2710)
Status of this Memo Status of this Memo
This document is an Internet-Draft and is in full conformance with This document is an Internet-Draft and is in full conformance with
all provisions of Section 10 of RFC2026. all provisions of Section 10 of RFC2026.
Internet-Drafts are working documents of the Internet Engineering Internet-Drafts are working documents of the Internet Engineering
skipping to change at page 1, line 40 skipping to change at page 1, line 40
It has come to light that there is an issue with the selection of a It has come to light that there is an issue with the selection of a
suitable IPv6 source address for Multicast Listener Discovery suitable IPv6 source address for Multicast Listener Discovery
messages when a node is performing stateless address messages when a node is performing stateless address
autoconfiguration. This memo is intended to clarify the rules on autoconfiguration. This memo is intended to clarify the rules on
selecting an IPv6 address to use for MLD messages. selecting an IPv6 address to use for MLD messages.
Introduction Introduction
The original specification of the Multicast Listener Discovery The original specification of the Multicast Listener Discovery
Protocol[RFC 2710] mandated the use of a link-local IPv6 source Protocol[RFC 2710] mandates the use of a link-local IPv6 source
address for the transmission of MLD messages. In addition, MLD also address for the transmission of MLD messages. In addition, MLD also
requires nodes to send MLD Report messages when joining any IPv6 requires nodes to send MLD Report messages when joining any IPv6
multicast group (except the All-Nodes address and addresses of scope multicast group (except the All-Nodes address and addresses of scope
less than 2). less than 2).
These MLD requirements conflict with the use of IPv6 multicast within These MLD requirements conflict with the use of IPv6 multicast within
the Neighbor Discovery Protocol[RFC 2461]. For stateless the Neighbor Discovery Protocol[RFC 2461]. For stateless
autoconfiguration, as defined in [RFC 2462], a node is required to autoconfiguration, as defined in [RFC 2462], a node is required to
join several IPv6 multicast groups in order to perform Duplicate join several IPv6 multicast groups in order to perform Duplicate
Address Detection prior to its use. Since the only address the node Address Detection prior to its use. Since the only address the node
has is tentative, and cannot be used for communication, it does not has is tentative, and cannot be used for communication, it does not
have a suitable address to utilize as a source address. have a suitable address to utilize as a source address.
This document will clarify the IPv6 source address selection rules This document will clarify the IPv6 source address selection rules
for use with MLD. for use with MLD when no link-local addresses are available.
Terminology Terminology
The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT", The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT",
"SHOULD", "SHOULD NOT", "RECOMMENDED", "MAY", and "OPTIONAL" in this "SHOULD", "SHOULD NOT", "RECOMMENDED", "MAY", and "OPTIONAL" in this
document are to be interpreted as described in [RFC 2119]. document are to be interpreted as described in [RFC 2119].
Justification
In [RFC 2710], Section 3 requires that all MLD messages be sent with
a valid link-local IPv6 source address. However, a node in the
process of performing duplicate address detection for its link-local
address will not have one available to use as a source address. For
this reason, this document provides an alternative IPv6 source
address for MLD messages being used during duplicate address
detection.
In addition, Sections 5 and 6 of [RFC 2710] mandates that a node
receiving an MLD Report message verify that the IPv6 source address
is a link-local address. This document relaxes this rule in order to
support the alternative IPv6 source address in use during duplicate
address detection.
The discrepencies in the rules defined in [RFC 2710] and [RFC 2462]
has led to implementation issues. Several IPv6 implementations skip
sending MLD Report messages during duplicate address detection. This
leads to operational problems when a node is attached to switches
that perform MLD snooping. In this scenario, duplicate address
detection will complete successfully and collisions occur once the
address is put into use. These rules will allow implementations to
correctly implement duplicate address detection and operate in the
described environment.
MLD Source Address Selection Guidelines MLD Source Address Selection Guidelines
An MLD speaking node is required to choose a suitable IPv6 source An MLD speaking node is required to choose a suitable IPv6 source
address for all MLD messages (Report, Done, and Query). address for all MLD messages (Report, Done, and Query).
MLD Query messages MUST be sent with a valid link-local address as MLD Query messages MUST be sent with a valid link-local address as
the IPv6 source address. If a router receives a query message with the IPv6 source address. If a node (router or host) receives a query
an IPv6 source address set to the unspecified address (::), it MUST message with an IPv6 source address set to the unspecified address
silently discard the message and SHOULD log a warning. (::), it MUST silently discard the message and SHOULD log a warning.
MLD Report and Done messages MUST be sent with a valid link-local MLD Report and Done messages are sent with a link-local address as
address as the IPv6 source address. If a valid link-local address is the IPv6 source address, if a valid address is available on the
not available, the message MUST be sent with the unspecified address interface. If a valid link-local address is not available (e.g. one
(::) as the IPv6 source address. has not been configured), the message is sent with the unspecified
address (::) as the IPv6 source address.
Once a valid link-local address is available, a node SHOULD generate
new MLD Report messages for all multicast addresses joined on the
interface.
Source Address Selection Implications Source Address Selection Implications
In RFC 2710, MLD Report and Done messages are required to have an In RFC 2710, MLD Report and Done messages are required to have an
IPv6 source address that is link-local. This memo augments that rule IPv6 source address that is link-local. This memo augments that rule
by allowing these messages to contain the unspecified address (::) as by allowing these messages to contain the unspecified address (::) as
the source address. the source address.
The behavior of RFC 2710 implementations, when receiving a message The behavior of RFC 2710 implementations, when receiving a message
with a source address of ::, is dependent upon how the implementation with a source address of ::, is dependent upon how the implementation
skipping to change at page 3, line 25 skipping to change at page 4, line 9
lead to on-link abuse that is harder to trace. However, due to the lead to on-link abuse that is harder to trace. However, due to the
expected behavior of RFC 2710 implementations to drop these messages expected behavior of RFC 2710 implementations to drop these messages
and the additional rule that Query messages with the unspecified and the additional rule that Query messages with the unspecified
address be dropped, the impact of such messages will not affect address be dropped, the impact of such messages will not affect
multicast capabilities on the link. multicast capabilities on the link.
References References
Normative References Normative References
[RFC 2119] Bradner, S., "Key words for use in RFCs to Indicate
Requirement Levels", BCP 14, RFC 2119, March 1997.
[RFC 2710] Deering, S., Fenner, W., Haberman, B., "Multicast [RFC 2710] Deering, S., Fenner, W., Haberman, B., "Multicast
Listener Discovery (MLD) for IPv6", RFC 2710, October Listener Discovery (MLD) for IPv6", RFC 2710, October
1999. 1999.
Informative References Informative References
[RFC 2461] Narten, T., Nordmark, E., Simpson, W., "Neighbor [RFC 2461] Narten, T., Nordmark, E., Simpson, W., "Neighbor
Discovery for IP Version 6 (IPv6)", RFC 2461, December Discovery for IP Version 6 (IPv6)", RFC 2461, December
1998. 1998.
[RFC 2462] Thomson, S., Narten, T., "IPv6 Stateless Address [RFC 2462] Thomson, S., Narten, T., "IPv6 Stateless Address
Autoconfiguration", RFC 2462, December 1998. Autoconfiguration", RFC 2462, December 1998.
[RFC 2119] Bradner, S., "Key words for use in RFCs to Indicate
Requirement Levels", BCP 14, RFC 2119, March 1997.
Author's Address Author's Address
Brian Haberman Brian Haberman
Caspian Networks Caspian Networks
One Park Drive One Park Drive
Suite 400 Suite 400
Research Triangle Park, NC 27709 Research Triangle Park, NC 27709
Phone: +1-919-949-4828 Phone: +1-919-949-4828
EMail: bkhabs@nc.rr.com EMail: bkhabs@nc.rr.com
 End of changes. 

This html diff was produced by rfcdiff 1.23, available from http://www.levkowetz.com/ietf/tools/rfcdiff/