Subject: [MBONED] Proposed AMT draft spec changes and open questions

From: Greg Bumgardner <[email-masked]>
Date: Mon, 01 Aug 2011 11:49:38 -0700

Resending this after getting bounced...

All,

Based on discussions held in the mboned session at IETF-81, I propose the following changes to the AMT draft:

- Modify AMT Request message to add a flag that indicates which protocol/address-family the gateway wishes to use for this request.

     0                   1                   2                   3
     0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
    +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
    |     Type=0x3  |   Reserved  |F|            Reserved           |
    +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
    |            Request Nonce                                      |
    +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+

                                 AMT Request

Where F == 0 for IPv4/IGMP and F == 1 for IPv6/MLD.
A relay MUST return the appropriate general query report in the Membership Query message and a gateway MUST send the appropriate group membership report in the Membership Update message. If the query or report protocol does not match that requested in the Request message, the message MUST be ignored.

*TBD: Should a gateway use different source ports for IGMP and MLD requests, or should we indicate that a relay must allow for both IGMP and MLD reports from a single source/port address pair?
*

- Modify the AMT Membership Query Message to word align the Gateway Address field.

     0                   1                   2                   3
     0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
    +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
    |     Type=0x4  |    Flags      |         Response MAC          |
    +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
    |            Response MAC (continued)                           |
    +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
    |            Request Nonce                                      |
    +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
    |            IGMP Membership Query or MLD Listener Query        |
    |            (including IP Header)                              |
    |            ...                                                |
    +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
    |     Gateway Port Number       |       Gateway Address ...     | ?
    +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ ?
    |                    ... Gateway Address (ctd) ...              | ?
    +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ ?
    |                    ... Gateway Address (ctd) ...              | ?
    +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ ?
    |                    ... Gateway Address (ctd) ...              | ?
    +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ ?
    |   ... Gateway Address (ctd)   |                                 ?
    +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+

                            AMT Membership Query

is changed to..

     0                   1                   2                   3
     0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
    +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
    |     Type=0x4  |    Flags      |         Response MAC          |
    +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
    |            Response MAC (continued)                           |
    +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
    |            Request Nonce                                      |
    +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
    |            IGMP Membership Query or MLD Listener Query        |
    |            (including IP Header)                              |
    |            ...                                                |
    +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
    |          Reserved             |       Gateway Port Number     |
    +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
    |                                                               |
    +                                                               +
    |                                                               |
    +                       Gateway Address                         +
    |                                                               |
    +                                                               +
    |                                                               |
    +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+

                           AMT Membership Query

*TBD: Should the gateway address be treated as an optional field? I 
believe the spec should indicate that a relay MUST include this field in 
Membership Query messages (and set the flag), but existing gateway 
implementations should not expect to find it to provide compatibility 
with existing relay implementations.
*
-g.b.
-- 
Greg Bumgardner
Eugene, OR

---

From: Thomas Morin <[email-masked]>
Date: Thu, 25 Aug 2011 15:07:14 +0200

Hi Greg, folks,

Greg Bumgardner a écrit :
> A relay MUST return the appropriate general query report in the Membership Query message and a gateway MUST send the
>   appropriate group membership report in the Membership Update message. If the query or report protocol does not match
> that requested in the Request message, the message MUST be ignored.

Unless anyone disagrees, we will include this in next revision.
Maybe we can change the letter to 'V' like version (IP protocol 
version), rather than 'F' ?

>
>
> *TBD: Should a gateway use different source ports for IGMP and MLD requests, or should we indicate that a relay must allow
> for both IGMP and MLD reports from a single source/port address pair? *

I can't find a reason why we wouldn't allow the mix.
Let's allow the mix ?

I'm not sure the performance win is big (given how often Query are 
sent/received compared to Data messages), and it won't ensure word 
alignment for 64-bit platforms...but...

Why not reverse the "Reserved" field and the "Gateway Port Number" 
field, so that the Gateway Port Number field is also word-aligned (on 
32-bit platforms) ?

> believe the spec should indicate that a relay MUST include this field 
> in Membership Query messages (and set the flag), but existing gateway 

I think we possibly need to make sure we got the Teardown procedures 
right before deciding on their "[MUST/SHOULD/MAY] be supported" status.
In any case, what needs for sure to be enforced is that a Relay should 
add these fields if-and-only-if it supports the Teardown procedures.
And I agree that a gateway implementation should be able to cope with a 
Relay not implementing this field.

-Thomas