-
Notifications
You must be signed in to change notification settings - Fork 2k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
gnrc_sixlowpan: allow to build with gnrc_sixlowpan_ctx disabled #17594
Conversation
fda52de
to
b154977
Compare
b154977
to
6e70cd1
Compare
6e70cd1
to
7ce4319
Compare
If I have one 6LBR and one 6LR (0) compiled as usual, and one 6LR (1) compiled with Is this expected behaviour? RFC6775 says it is kind of important that all nodes get the context from the 6LBR.
Or are just border routers supposed to be compiled with |
Yea this only works if the border router also uses |
Maybe that is, where #17678 is more of a clean solution: deactivate the auto-configuration of a context at the border router only and prevent the automatic dissemination via RAs in the first place. 6LoWPAN state-full compression was never designed to be run without some kind of synchronization mechanism in place (see RFC 6282) |
The question is: if it's disabled, why include the code for it in the ROM? |
The problem I'm trying to work around here is that Do you agree that this should be a per-interface flag (in addition to a config option, so it can be compile-time disabled for non-6Lo interfaces)? (I still think it's useful to have the option to build without |
Yes, I think that is a good thing to have, though I am not sure what this could imply for the requirements set out in RFC 6775. |
Disabling here is a question that the network operator (i.e. the owner of the border router) decides. Sure, if you have full control over the network, you may disable it also in ROM, but if you go in blind, the node should be able to work with stateful header compression. |
This issue has been automatically marked as stale because it has not had recent activity. It will be closed if no further activity occurs. If you want me to ignore this issue, please mark it with the "State: don't stale" label. Thank you for your contributions. |
With |
#19604 provides the proper fix for this. |
Contribution description
This allows to disable the
gnrc_sixlowpan_ctx
module. This is useful if no compression contexts are desired.It is an easy workaround for the issue that
CONFIG_GNRC_IPV6_NIB_MULTIHOP_P6C
is not checked per-interface and thus having a non-6Lo host behind a 6Lo node does not work, but since compression contexts are an optional feature, it should be possible to disable them.Testing procedure
Everything should still work with
In my case I have:
same54-xpro (border router)
samr21-xpro (6LR)
samd21-xpro (IPv6 node)
ping between samd21-xpro and same54-xpro via SLIP and IEEE 802.15.4
Issues/PRs references