On 2.7.2015 12.55, Juliusz Chroboczek wrote:
You're right, I don't need endpoint except in NETWORK-STATE.
- NetS: need (possibly with delay, to update Trickle state match; we do
Trickle state update last so ordering does not matter)
Well, for HNCP Trickle is per-interface, so it's only really needed in
order to update last_contact.
True.
- NodeS: no need (local state update, regardless of where it comes from)
You're right, my need of it is an artifact of an earlier version of my
code (I was indexing unicast buffers by neighbour, rather than by
sockaddr). (And I'm realising that the buffer management code can be
further simplified.)
So the strict minimum for my implementation (once I've fixed it) is going
to be NODE-ENDPOINT MUST before unicast NETWORK-STATE only. Requiring it
before all NETWORK-STATE simplifies the spec, but is not quite minimal.
I guess I will add that ordering to the spec, as it simplifies the
implementation. I will leave the datagrams without Network State TLV
SHOULD (as per my updated text), because it speeds up initial peer
establishment a bit if you already include it in the initial requests
(for example).
-- Juliusz
P.S. Could you please push your HNCP-VERSION fix to OpenWRT?
Current HEAD of master isn't exactly correct[1] (looks like my fancy
one-pass update to the protocol handling broke something). We will push
the updated version to OpenWrt routing before end of the week once we're
happy about it[2] (and dncp-07 and hncp-07 are out, hopefully).
If you want, you can update your local routing feed hnetd to use git
version 7e24726fa3698ac8ca6c033935656b887ef5a000, that one passed tests
and is more correct in terms of ignoring just HNCP TLVs in case of
version conflict than our 'official' OpenWrt routing version right now.
Cheers,
-Markus
[1] Well, it works 99.9+% of the time, but I am perfectionist. There are
some rare corner cases where it breaks right now. Thank $DEITY for
serious stress tests.
[2] Close to 0% failure rate on system tests and 0% failure rate on unit
tests (that we care about) / stress tests.
_______________________________________________
homenet mailing list
homenet@ietf.org
https://www.ietf.org/mailman/listinfo/homenet