Hi,

Just a couple of minor points:

On 03/11/2017 02:37, Michael Richardson wrote:
> 
> Brian, did I get this right?
> 
> 4.1.1.  Proxy Grasp announcements
> 
>    A proxy uses the GRASP M_FLOOD mechanism to announce itself.  The
>    pledge SHOULD listen for messages of these form.  This announcement
>    can be within the same message as the ACP announcement detailed in
>    [I-D.ietf-anima-autonomic-control-plane].  The M_FLOOD is formatted
>    as follows:
> 
>    [M_FLOOD, 12340815, h'fe80::1', 180000,
>                ["AN_Proxy", 4, 1, ""],
>                [O_IPv6_LOCATOR,
>                     h'fe80::1', 'TCP', 4443]]
> 
>    Figure 6b: Proxy Discovery
> 
>    The formal CDDL definition is:
> 
>    flood-message = [M_FLOOD, session-id, initiator, ttl,
>                     +[objective, (locator-option / [])]]
> 
>    objective = ["AN_Proxy", objective-flags, loop-count,
>                                           objective-value]
> 
>    ttl             = 180000     ; 180,000 ms (3 minutes)
>    initiator = ACP address to contact Registrar
>    objective-flags = sync-only  ; as in GRASP spec
>    sync-only       =  4         ; M_FLOOD only requires synchronization
>    loop-count      =  1         ; one hop only
>    objective-value = ''         ; none

If you want a null string in CDDL, I think it has to be "". But why
not make it any in the formal syntax, with a RECOMMENDED value of null?
That provides extensibility at zero cost.

>    locator         = [ O_IPv6_LOCATOR, ipv6-address,
>                        transport-proto, port-number ]
>    ipv6-address     = the v6 LL of the proxy
>    transport-proto  = 'TCP'

That field is supposed to be an integer. And I assume you want to
allow UDP too? So in GRASP-CDDL, that would be IPPROTO_TCP / IPPROTO_UDP

Not sure if IPIP is also an option here, that would be a tiny extension
to GRASP-CDDL (named IPPROTO_IPV6 of course).

That said, I updated my Reggie, Procksy and Pledji demos to the current
definitions and they are happily running in background as I type this.
Please check the attached diagnostic output. The first block is an M_FLOOD
message from the registrar. I coded it to send three [objective, locator]
pairs in a single message. The next three blocks are M_FLOODs from
the proxy - in this case I coded it to send three separate M_FLOODs, one for
each locator. Tell me if any of it looks unexpected. (All GRASP instances were
running on the same host for this test, so you will only see one GUA address
and one LL address).

I've pushed the code to GitHub. Doc at
https://github.com/becarpenter/graspy/blob/master/brski-demo.pdf

    Brian
 
>    port-number      = selected by proxy
> 
>    Figure 6c: AN_Proxy CDDL
> 
> --
> Michael Richardson <[email protected]>, Sandelman Software Works
>  -= IPv6 IoT consulting =-
> 
> 
> 
_mclisten 4536 Received multicast 
b'87091a4dde8f14502406e0013d21000128ccdc4c970367811a0001d4c0828471414e5f6a6f696e5f7265676973747261720506f6841867502406e0013d21000128ccdc4c97036781061850828471414e5f6a6f696e5f7265676973747261720506f6841867502406e0013d21000128ccdc4c9703678111190370828471414e5f6a6f696e5f7265676973747261720506f6841867502406e0013d21000128ccdc4c97036781182900'
 from fe80::28cc:dc4c:9703:6781 port 60862 interface 12 
_mclisten 4536 Multicast: CBOR->Python: [9, 1306431252, 
b'2406e0013d21000128ccdc4c97036781', 120000, [['AN_join_registrar', 5, 6, 
None], [103, b'2406e0013d21000128ccdc4c97036781', 6, 80]], 
[['AN_join_registrar', 5, 6, None], [103, b'2406e0013d21000128ccdc4c97036781', 
17, 880]], [['AN_join_registrar', 5, 6, None], [103, 
b'2406e0013d21000128ccdc4c97036781', 41, 0]]] 


_mclisten 4536 Received multicast 
b'85091ac5b24cac502406e0013d21000128ccdc4c9703678119ea60828468414e5f70726f78790501f684186750fe8000000000000028ccdc4c9703678106192e19'
 from fe80::28cc:dc4c:9703:6781 port 57605 interface 12 
_mclisten 4536 Multicast: CBOR->Python: [9, 3316796588, 
b'2406e0013d21000128ccdc4c97036781', 60000, [['AN_proxy', 5, 1, None], [103, 
b'fe8000000000000028ccdc4c97036781', 6, 11801]]] 

_mclisten 4536 Received multicast 
b'85091a9f3ed0d3502406e0013d21000128ccdc4c9703678119ea60828468414e5f70726f78790501f684186750fe8000000000000028ccdc4c97036781182900'
 from fe80::28cc:dc4c:9703:6781 port 57605 interface 12 
_mclisten 4536 Multicast: CBOR->Python: [9, 2671694035, 
b'2406e0013d21000128ccdc4c97036781', 60000, [['AN_proxy', 5, 1, None], [103, 
b'fe8000000000000028ccdc4c97036781', 41, 0]]] 

_mclisten 4536 Received multicast 
b'85091adeafc908502406e0013d21000128ccdc4c9703678119ea60828468414e5f70726f78790501f684186750fe8000000000000028ccdc4c9703678111192e7f'
 from fe80::28cc:dc4c:9703:6781 port 57605 interface 12 
_mclisten 4536 Multicast: CBOR->Python: [9, 3736062216, 
b'2406e0013d21000128ccdc4c97036781', 60000, [['AN_proxy', 5, 1, None], [103, 
b'fe8000000000000028ccdc4c97036781', 17, 11903]]]

_______________________________________________
Anima mailing list
[email protected]
https://www.ietf.org/mailman/listinfo/anima

Reply via email to