Hi,

Am 17.11.2015 11:16 schrieb "Emmanuel Baccelli" <[email protected]
>:

> I agree that some text would be very helpful. Actually, the plan was to
> indeed provide some such text very soon, right Martine?
>
yes, we are currently working on making the documentation more precise and
helpful for the whole system. Not just IPv6 and 6LoWPAN. Actually, that was
what I try to imply with "better documentation is one of our main goals for
the next release(s)".

> On Tue, Nov 17, 2015 at 11:03 AM, Kaspar Schleiser <[email protected]>
> wrote:
>
>> Hey Martine,
>>
>> […]
>> When I saw Ralph's question, I was looking forward to you using the
>> opportunity to put some light in how gnrc_ipv6, gnrc_ipv6_router,
>> ipv6_router_default, sixlowpan, sixlowpan_nd, sixlowpan_router_nd,
>> sixlowpan_border_router_sixlowpan_nd_host, ..., are related.
>>
>
Not to go into much detail (that's what a landing page in our future
documentation will be for; but thanks for pointing out, that pseudo-modules
will need documentation too :-)), but:
* gnrc_ipv6 is the main module implementing IPv6 for GNRC. Building just
gnrc_ipv6 gives you the bare minimum you need for IPv6 communication: 1-hop
sending and receiving
  * some sub-modules, like gnrc_ipv6_netif (IPv6-relevant interface data)
and gnrc_ipv6_nc (neighbor cache) are independently usable (good for
testing) from gnrc_ipv6, but essential to its functionality
  * gnrc_ipv6_router is a pseudo-module providing build-instructions to
include routing capabilities for IPv6 (forwarding of packets + FIB)
* gnrc_sixlowpan is the bare minimum implementation of 6LoWPAN for GNRC
  * gnrc_sixlowpan_frag and gnrc_sixlowpan_iphc implenent 6LoWPAN
fragmentation and IP header compression respectively
  * gnrc_sixlowpan_nd provides base functionality for 6Lo-ND (but no
behavior).
    * gnrc_sixlowpan_nd_host provides host behavior of 6Lo-ND
    * gnrc_sixlowpan_nd_router provides router behavior of 6Lo-ND
    * gnrc_sixlowpan_nd_border_router provides border router behavior of
6Lo-ND
* either of the nd or router modules can be included or excluded from the
build to optimize in a size-feature axis. The stack should still be
operational, though the features of the missing modules would also be
missing of course.
* gnrc_.*_default are convenience modules that provide the required
neighbor discoveries of the given mode and other modules needed for
(size-wise) ideal full operation.

Hope this was more helpful,
Martine
_______________________________________________
devel mailing list
[email protected]
https://lists.riot-os.org/mailman/listinfo/devel

Reply via email to