Subject: IPv6 over IEEE1394

From: Atsushi Onoe <[email-masked]>
Date: Wed, 7 Feb 2001 18:33:28 +0900 (JST)

Thomas Norten pointed out to authors that <draft-ietf-ipngwg-1394-00.txt>
doesn't clearly describe if the MCAP (Multicast Channel Allocation
Protocol) is required (MUST) or not.

Since IEEE1394 has only 63 channels for multicast, both IPv4 over IEEE1394
(RFC2734) and IPv6 over IEEE1394 define all multicast addresses MUST be
share single broadcast channel by default.  The intention of MCAP
is to split high rate data traffic from the default broadcast channel.
For this reason, RFC2734 says 224.0.0.1 and 224.0.0.2 MUST use broadcast
channel.

From RFC2734 (IPv4 over IEEE 1394) "9. IP MULTICAST":

|    By default, all best-effort IP multicast SHALL use asynchronous
|    stream packets whose channel number is equal to the channel field
|    from the BROADCAST_CHANNEL register. In particular, datagrams
|    addressed to 224.0.0.1 and 224.0.0.2 SHALL use this channel number.
|    Best-effort IP multicast for other IP multicast group addresses may
|    utilize a different channel number if such a channel number is
|    allocated and advertised prior to use, as described below.

Similarly, we, authors, would like to change the text of IPv6 over IEEE1394
as follows:

| 9. IPv6 MULTICAST
| 
|    By default, all best-effort IPv6 multicast MUST use asynchronous
|    stream packets whose channel number is equal to the channel field
|    from the BROADCAST_CHANNEL register.  In particular, datagrams
|    addressed to all-nodes multicast addresses, all-routers multicast
|    addresses, and solicited-node multicast addresses [AARCH] MUST use
|    the default channel specified by the BROADCAST_CHANNEL register.
| 
|    Best-effort IPv6 multicast for other multicast group addresses may
|    utilize a different channel number if such a channel number is
|    allocated and advertised prior to use, by a multicast channel
|    allocation protocol (MCAP), as described in [IP1394].  The
|    implementors are encouraged to use this protocol when transmitting
|    high-rate multicast streams.  When a node wishes to receive multicast
|    data addressed to other than all-nodes multicast addresses, all-
|    routers multicast addresses, and solicited-node multicast addresses,
|    it MUST confirm if the channel mapping between a multicast group
|    address and a channel number exists using MCAP, as described in "9.3
|    Multicast Receive" in [IP1394].
| 
|    The MCAP 'type' value for IPv6 group address descriptor is {to be
|    assigned by IANA}.

Comments?

Atsushi Onoe
--------------------------------------------------------------------
IETF IPng Working Group Mailing List
IPng Home Page:                      http://playground.sun.com/ipng
FTP archive:                      ftp://playground.sun.com/pub/ipng
Direct all administrative requests to [email-masked]
--------------------------------------------------------------------

---

From: Thomas Narten <[email-masked]>
Date: Wed, 07 Feb 2001 13:24:34 -0500

> |    The MCAP 'type' value for IPv6 group address descriptor is {to be

I think this text is much better. It is clear now that all nodes must
implement at least enough of the MCAP protocol to properly process
receives from channels other than the broadcast. Send-only nodes (do
they exist?) could presumably not implement any of MCAP and still be
compliant. Is this the intent?  Or is the intent really to require it
for both senders and receivers, but then encourage senders to actually
use MCAP? One of the things that is unspecified in RFC 2734 is when to
allocate a separate multicast channel and when to use the broadcast
one. I gather that experimentation/experience is needed in this space.

> |    allocated and advertised prior to use, by a multicast channel

s/by a/by the/

I.e., there is only one such protocol, and it is MCAP.

> |    allocation protocol (MCAP), as described in [IP1394].  The

Thomas

---

From: Atsushi Onoe <[email-masked]>
Date: Fri, 9 Feb 2001 00:47:51 +0900 (JST)

> use MCAP?

Send-only nodes MUST use MCAP to determine whether or not the multicast
group has been already mapped to a channel other than the default broadcast
channel.

So the text should be as follows:

|    high-rate multicast streams.  When a node wishes to receive or
|    transmit multicast data addressed to other than all-nodes multicast
|    addresses, all-routers multicast addresses, and solicited-node
|    multicast addresses, it MUST confirm if the channel mapping between
|    a multicast group address and a channel number exists using MCAP,
|    as described in "9. IP MULTICAST" in [IP1394].

Only a node which never send nor receive any multicast group address
other than
	all-nodes multicast addresses,
	all-routers multicast addresses, and
	solicited-node multicast addresses,
can omit to implement MCAP.

> One of the things that is unspecified in RFC 2734 is when to

Since it doesn't affect interoperability, it can be left to implementation
for now, IMO.

Atsushi Onoe

---

From: Atsushi Onoe <[email-masked]>
Date: Fri, 9 Feb 2001 02:31:49 +0900 (JST)

> group has been already mapped to a channel other than the default broadcast

Oops!  Sorry, I was wrong.
Kenji Fujisawa pointed out that I misread the text in "9.4 Multicast
transmit" of RFC2734 (IPv4 over 1394).  The above should be read:

	"If a node wishes to transmit the multicast data to
	other than default channel, it MUST confirm whether or not the
	multicast group has been already allocated to the channel."

The correct text to be included should be:

|    When a node wishes to receive multicast data addressed to other
|    than all-nodes multicast addresses, all-routers multicast addresses,
|    and solicited-node multicast addresses, it MUST confirm if the
|    channel mapping between a multicast group address and a channel
|    number exists using MCAP, as described in "9.3 Multicast Receive"
|    in [IP1394].
|    
|    The implementation of MCAP is optional for send-only nodes.  A node
|    MAY transmit multicast data addressed to any multicast addresses
|    into the default broadcast channel regardless of the existing
|    allocation of the channel.  If a node wishes to transmit multicast
|    data on other than the default channel, it MUST first confirm by
|    MCAP whether or not a channel number for the group address has been
|    already allocated.

Atsushi Onoe