draft-ietf-roll-trickle-mcast-09.txt   draft-ietf-roll-trickle-mcast-10.txt 
ROLL J. Hui ROLL J. Hui
Internet-Draft Cisco Internet-Draft Cisco
Intended status: Standards Track R. Kelsey Intended status: Standards Track R. Kelsey
Expires: October 16, 2014 Silicon Labs Expires: May 14, 2015 Silicon Labs
April 14, 2014 November 10, 2014
Multicast Protocol for Low power and Lossy Networks (MPL) Multicast Protocol for Low power and Lossy Networks (MPL)
draft-ietf-roll-trickle-mcast-09 draft-ietf-roll-trickle-mcast-10
Abstract Abstract
This document specifies the Multicast Protocol for Low power and This document specifies the Multicast Protocol for Low power and
Lossy Networks (MPL) that provides IPv6 multicast forwarding in Lossy Networks (MPL) that provides IPv6 multicast forwarding in
constrained networks. MPL avoids the need to construct or maintain constrained networks. MPL avoids the need to construct or maintain
any multicast forwarding topology, disseminating messages to all MPL any multicast forwarding topology, disseminating messages to all MPL
Forwarders in an MPL Domain. MPL uses the Trickle algorithm to Forwarders in an MPL Domain. MPL uses the Trickle algorithm to
manage message transmissions for both control and data-plane manage message transmissions for both control and data-plane
messages. Different Trickle parameter configurations allow MPL to messages. Different Trickle parameter configurations allow MPL to
skipping to change at page 1, line 38 skipping to change at page 1, line 38
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 October 16, 2014. This Internet-Draft will expire on May 14, 2015.
Copyright Notice Copyright Notice
Copyright (c) 2014 IETF Trust and the persons identified as the Copyright (c) 2014 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 20 skipping to change at page 2, line 20
1. Introduction . . . . . . . . . . . . . . . . . . . . . . . . 3 1. Introduction . . . . . . . . . . . . . . . . . . . . . . . . 3
2. Terminology . . . . . . . . . . . . . . . . . . . . . . . . . 3 2. Terminology . . . . . . . . . . . . . . . . . . . . . . . . . 3
3. Applicability Statement . . . . . . . . . . . . . . . . . . . 4 3. Applicability Statement . . . . . . . . . . . . . . . . . . . 4
4. Protocol Overview . . . . . . . . . . . . . . . . . . . . . . 5 4. Protocol Overview . . . . . . . . . . . . . . . . . . . . . . 5
4.1. MPL Domains . . . . . . . . . . . . . . . . . . . . . . . 5 4.1. MPL Domains . . . . . . . . . . . . . . . . . . . . . . . 5
4.2. Information Base Overview . . . . . . . . . . . . . . . . 6 4.2. Information Base Overview . . . . . . . . . . . . . . . . 6
4.3. Protocol Overview . . . . . . . . . . . . . . . . . . . . 6 4.3. Protocol Overview . . . . . . . . . . . . . . . . . . . . 6
4.4. Signaling Overview . . . . . . . . . . . . . . . . . . . 8 4.4. Signaling Overview . . . . . . . . . . . . . . . . . . . 8
5. MPL Parameters and Constants . . . . . . . . . . . . . . . . 8 5. MPL Parameters and Constants . . . . . . . . . . . . . . . . 8
5.1. MPL Multicast Addresses . . . . . . . . . . . . . . . . . 8 5.1. MPL Multicast Addresses . . . . . . . . . . . . . . . . . 9
5.2. MPL Message Types . . . . . . . . . . . . . . . . . . . . 9 5.2. MPL Message Types . . . . . . . . . . . . . . . . . . . . 9
5.3. MPL Seed Identifiers . . . . . . . . . . . . . . . . . . 9 5.3. MPL Seed Identifiers . . . . . . . . . . . . . . . . . . 9
5.4. MPL Parameters . . . . . . . . . . . . . . . . . . . . . 9 5.4. MPL Parameters . . . . . . . . . . . . . . . . . . . . . 9
6. Protocol Message Formats . . . . . . . . . . . . . . . . . . 11 6. Protocol Message Formats . . . . . . . . . . . . . . . . . . 11
6.1. MPL Option . . . . . . . . . . . . . . . . . . . . . . . 11 6.1. MPL Option . . . . . . . . . . . . . . . . . . . . . . . 11
6.2. MPL Control Message . . . . . . . . . . . . . . . . . . . 12 6.2. MPL Control Message . . . . . . . . . . . . . . . . . . . 13
6.3. MPL Seed Info . . . . . . . . . . . . . . . . . . . . . . 13 6.3. MPL Seed Info . . . . . . . . . . . . . . . . . . . . . . 14
7. Information Base . . . . . . . . . . . . . . . . . . . . . . 14 7. Information Base . . . . . . . . . . . . . . . . . . . . . . 15
7.1. Local Interface Set . . . . . . . . . . . . . . . . . . . 14 7.1. Local Interface Set . . . . . . . . . . . . . . . . . . . 15
7.2. Domain Set . . . . . . . . . . . . . . . . . . . . . . . 15 7.2. Domain Set . . . . . . . . . . . . . . . . . . . . . . . 15
7.3. Seed Set . . . . . . . . . . . . . . . . . . . . . . . . 15 7.3. Seed Set . . . . . . . . . . . . . . . . . . . . . . . . 15
7.4. Buffered Message Set . . . . . . . . . . . . . . . . . . 15 7.4. Buffered Message Set . . . . . . . . . . . . . . . . . . 15
8. MPL Seed Sequence Numbers . . . . . . . . . . . . . . . . . . 16 8. MPL Seed Sequence Numbers . . . . . . . . . . . . . . . . . . 16
9. MPL Data Messages . . . . . . . . . . . . . . . . . . . . . . 16 9. MPL Data Messages . . . . . . . . . . . . . . . . . . . . . . 16
9.1. MPL Data Message Generation . . . . . . . . . . . . . . . 16 9.1. MPL Data Message Generation . . . . . . . . . . . . . . . 16
9.2. MPL Data Message Transmission . . . . . . . . . . . . . . 17 9.2. MPL Data Message Transmission . . . . . . . . . . . . . . 17
9.3. MPL Data Message Processing . . . . . . . . . . . . . . . 18 9.3. MPL Data Message Processing . . . . . . . . . . . . . . . 18
10. MPL Control Messages . . . . . . . . . . . . . . . . . . . . 19 10. MPL Control Messages . . . . . . . . . . . . . . . . . . . . 19
10.1. MPL Control Message Generation . . . . . . . . . . . . . 19 10.1. MPL Control Message Generation . . . . . . . . . . . . . 19
10.2. MPL Control Message Transmission . . . . . . . . . . . . 19 10.2. MPL Control Message Transmission . . . . . . . . . . . . 19
10.3. MPL Control Message Processing . . . . . . . . . . . . . 20 10.3. MPL Control Message Processing . . . . . . . . . . . . . 20
11. Acknowledgements . . . . . . . . . . . . . . . . . . . . . . 21 11. Acknowledgements . . . . . . . . . . . . . . . . . . . . . . 21
12. IANA Considerations . . . . . . . . . . . . . . . . . . . . . 21 12. IANA Considerations . . . . . . . . . . . . . . . . . . . . . 21
12.1. MPL Option Type . . . . . . . . . . . . . . . . . . . . 21 12.1. MPL Option Type . . . . . . . . . . . . . . . . . . . . 22
12.2. MPL ICMPv6 Type . . . . . . . . . . . . . . . . . . . . 22 12.2. MPL ICMPv6 Type . . . . . . . . . . . . . . . . . . . . 22
12.3. Well-known Multicast Addresses . . . . . . . . . . . . . 22 12.3. Well-known Multicast Addresses . . . . . . . . . . . . . 22
13. Security Considerations . . . . . . . . . . . . . . . . . . . 22 13. Security Considerations . . . . . . . . . . . . . . . . . . . 23
14. References . . . . . . . . . . . . . . . . . . . . . . . . . 23 14. References . . . . . . . . . . . . . . . . . . . . . . . . . 23
14.1. Normative References . . . . . . . . . . . . . . . . . . 23 14.1. Normative References . . . . . . . . . . . . . . . . . . 23
14.2. Informative References . . . . . . . . . . . . . . . . . 24 14.2. Informative References . . . . . . . . . . . . . . . . . 24
Authors' Addresses . . . . . . . . . . . . . . . . . . . . . . . 24 Authors' Addresses . . . . . . . . . . . . . . . . . . . . . . . 24
1. Introduction 1. Introduction
Low power and Lossy Networks typically operate with strict resource Low power and Lossy Networks typically operate with strict resource
constraints in communication, computation, memory, and energy. Such constraints in communication, computation, memory, and energy. Such
resource constraints may preclude the use of existing IPv6 multicast resource constraints may preclude the use of existing IPv6 multicast
skipping to change at page 5, line 11 skipping to change at page 5, line 11
multicast messages using the Trickle algorithm, MPL is designed for multicast messages using the Trickle algorithm, MPL is designed for
networks that communicate using low-power and lossy links with widely networks that communicate using low-power and lossy links with widely
varying topologies in both the space and time dimensions. varying topologies in both the space and time dimensions.
While designed specifically for Low-Power and Lossy Networks, MPL is While designed specifically for Low-Power and Lossy Networks, MPL is
not limited to use over such networks. MPL may be applicable to any not limited to use over such networks. MPL may be applicable to any
network where no multicast routing state is desired. MPL may also be network where no multicast routing state is desired. MPL may also be
used in environments where only a subset of links are considered Low- used in environments where only a subset of links are considered Low-
Power and Lossy links. Power and Lossy links.
MPL is parameterized to support different dissemination techniques.
In one parameterization, MPL may utilize the classic flooding method
that involves having each device receiving a message rebroadcast the
message. In another parameterization, MPL may utilize Trickle's
[RFC6206] "polite gossip" method that involves transmission
suppression and adaptive timing techniques. By supporting both
simple flooding and Trickle methods, MPL can be configured to operate
well in a variety of situations [Clausen2013].
A host need not be aware that their multicast is supported by MPL as A host need not be aware that their multicast is supported by MPL as
long as its attachment router forwards multicast messages between the long as its attachment router forwards multicast messages between the
MPL Domain and the host. However, a host may choose to implement MPL MPL Domain and the host. However, a host may choose to implement MPL
so that it can take advantage of the broadcast medium inherent in so that it can take advantage of the broadcast medium inherent in
many Low-Power and Lossy Networks and receive multicast messages many Low-Power and Lossy Networks and receive multicast messages
carried by MPL directly. carried by MPL directly.
4. Protocol Overview 4. Protocol Overview
The goal of MPL is to deliver multicast messages to all interfaces The goal of MPL is to deliver multicast messages to all interfaces
skipping to change at page 16, line 51 skipping to change at page 17, line 12
ordering relative to other MPL Data Messages generated by the MPL ordering relative to other MPL Data Messages generated by the MPL
Seed. Seed.
When the destination address is an MPL Domain Address and the source When the destination address is an MPL Domain Address and the source
address is in the AddressLIst of an MPL Interface that belongs to address is in the AddressLIst of an MPL Interface that belongs to
that MPL Domain Address, the application message and the MPL Data that MPL Domain Address, the application message and the MPL Data
Message MAY be identical. In other words, the MPL Data Message may Message MAY be identical. In other words, the MPL Data Message may
contain a single IPv6 header that includes the MPL Option. contain a single IPv6 header that includes the MPL Option.
Otherwise, IPv6-in-IPv6 encapsulation MUST be used to satisfy the MPL Otherwise, IPv6-in-IPv6 encapsulation MUST be used to satisfy the MPL
Data Message requirements listed above [RFC2473]. The complete IPv6 Data Message requirements listed above [RFC2473]. The complete IPv6-
-in-IPv6 message forms an MPL Data Message. The outer IPv6 header in-IPv6 message forms an MPL Data Message. The outer IPv6 header
conforms to the MPL Data Message requirements listed above. The conforms to the MPL Data Message requirements listed above. The
encapsulated IPv6 datagram encodes the multicast data message that is encapsulated IPv6 datagram encodes the multicast data message that is
communicated beyond the MPL Domain. communicated beyond the MPL Domain.
9.2. MPL Data Message Transmission 9.2. MPL Data Message Transmission
An MPL Forwarder manages transmission of MPL Data Messages in its An MPL Forwarder manages transmission of MPL Data Messages in its
Buffered Message Sets using the Trickle algorithm [RFC6206]. An MPL Buffered Message Sets using the Trickle algorithm [RFC6206]. An MPL
Forwarder MUST use a separate Trickle timer for each MPL Data Message Forwarder MUST use a separate Trickle timer for each MPL Data Message
that it is actively forwarding. In accordance with Section 5 of RFC that it is actively forwarding. In accordance with Section 5 of RFC
skipping to change at page 21, line 27 skipping to change at page 21, line 34
Control Message Trickle timer. Additionally, for each of those Control Message Trickle timer. Additionally, for each of those
entries in the Buffered Message Set, the MPL Forwarder MUST reset the entries in the Buffered Message Set, the MPL Forwarder MUST reset the
Trickle timer and reset e to 0. If a Trickle timer is not associated Trickle timer and reset e to 0. If a Trickle timer is not associated
with the MPL Data Message, the MPL Forwarder MUST initialize and with the MPL Data Message, the MPL Forwarder MUST initialize and
start a new Trickle timer. start a new Trickle timer.
11. Acknowledgements 11. Acknowledgements
The authors would like to acknowledge the helpful comments of Robert The authors would like to acknowledge the helpful comments of Robert
Cragie, Esko Dijk, Ralph Droms, Paul Duffy, Adrian Farrel, Ulrich Cragie, Esko Dijk, Ralph Droms, Paul Duffy, Adrian Farrel, Ulrich
Herberg, Owen Kirby, Kerry Lynn, Joseph Reddy, Michael Richardson, Herberg, Owen Kirby, Philip Levis, Kerry Lynn, Joseph Reddy, Michael
Ines Robles, Don Sturek, Dario Tedeschi, and Peter van der Stok, Richardson, Ines Robles, Don Sturek, Dario Tedeschi, and Peter van
which greatly improved the document. der Stok, which greatly improved the document.
12. IANA Considerations 12. IANA Considerations
This document defines one IPv6 Option, a type that must be allocated This document defines one IPv6 Option, a type that must be allocated
from the IPv6 "Destination Options and Hop-by-Hop Options" registry from the IPv6 "Destination Options and Hop-by-Hop Options" registry
of [RFC2780]. of [RFC2780].
This document defines one ICMPv6 Message, a type that must be This document defines one ICMPv6 Message, a type that must be
allocated from the "ICMPv6 "type" Numbers" registry of [RFC4443]. allocated from the "ICMPv6 "type" Numbers" registry of [RFC4443].
skipping to change at page 23, line 32 skipping to change at page 23, line 39
MPL uses the Trickle algorithm to manage message transmissions and MPL uses the Trickle algorithm to manage message transmissions and
the security considerations described in [RFC6206] apply. the security considerations described in [RFC6206] apply.
14. References 14. References
14.1. Normative References 14.1. Normative References
[I-D.ietf-6man-multicast-scopes] [I-D.ietf-6man-multicast-scopes]
Droms, R., "IPv6 Multicast Address Scopes", draft-ietf- Droms, R., "IPv6 Multicast Address Scopes", draft-ietf-
6man-multicast-scopes-04 (work in progress), March 2014. 6man-multicast-scopes-07 (work in progress), June 2014.
[RFC1982] Elz, R. and R. Bush, "Serial Number Arithmetic", RFC 1982, [RFC1982] Elz, R. and R. Bush, "Serial Number Arithmetic", RFC 1982,
August 1996. August 1996.
[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.
[RFC2460] Deering, S. and R. Hinden, "Internet Protocol, Version 6 [RFC2460] Deering, S. and R. Hinden, "Internet Protocol, Version 6
(IPv6) Specification", RFC 2460, December 1998. (IPv6) Specification", RFC 2460, December 1998.
skipping to change at page 24, line 27 skipping to change at page 24, line 34
Datagrams over IEEE 802.15.4-Based Networks", RFC 6282, Datagrams over IEEE 802.15.4-Based Networks", RFC 6282,
September 2011. September 2011.
[RFC6550] Winter, T., Thubert, P., Brandt, A., Hui, J., Kelsey, R., [RFC6550] Winter, T., Thubert, P., Brandt, A., Hui, J., Kelsey, R.,
Levis, P., Pister, K., Struik, R., Vasseur, JP., and R. Levis, P., Pister, K., Struik, R., Vasseur, JP., and R.
Alexander, "RPL: IPv6 Routing Protocol for Low-Power and Alexander, "RPL: IPv6 Routing Protocol for Low-Power and
Lossy Networks", RFC 6550, March 2012. Lossy Networks", RFC 6550, March 2012.
14.2. Informative References 14.2. Informative References
[Clausen2013]
Clausen, T., Colin de Verdiere, A., and J. Yi,
"Performance Analysis of Trickle as a Flooding Mechanism",
November 2013.
[RFC3973] Adams, A., Nicholas, J., and W. Siadak, "Protocol [RFC3973] Adams, A., Nicholas, J., and W. Siadak, "Protocol
Independent Multicast - Dense Mode (PIM-DM): Protocol Independent Multicast - Dense Mode (PIM-DM): Protocol
Specification (Revised)", RFC 3973, January 2005. Specification (Revised)", RFC 3973, January 2005.
[RFC4601] Fenner, B., Handley, M., Holbrook, H., and I. Kouvelas, [RFC4601] Fenner, B., Handley, M., Holbrook, H., and I. Kouvelas,
"Protocol Independent Multicast - Sparse Mode (PIM-SM): "Protocol Independent Multicast - Sparse Mode (PIM-SM):
Protocol Specification (Revised)", RFC 4601, August 2006. Protocol Specification (Revised)", RFC 4601, August 2006.
Authors' Addresses Authors' Addresses
Jonathan W. Hui Jonathan W. Hui
Cisco Cisco
170 West Tasman Drive 170 West Tasman Drive
San Jose, California 95134 San Jose, California 95134
USA USA
Phone: +408 424 1547 Phone: +408 424 1547
Email: jonhui@cisco.com Email: jonhui@cisco.com
Richard Kelsey Richard Kelsey
Silicon Labs Silicon Labs
25 Thomson Place 25 Thomson Place
Boston, Massachusetts 02210 Boston, Massachusetts 02210
USA USA
Phone: +617 951 1225 Phone: +617 951 1225
Email: richard.kelsey@silabs.com Email: richard.kelsey@silabs.com
 End of changes. 14 change blocks. 
18 lines changed or deleted 32 lines changed or added

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