Yes, that include the comms stacks.
The wireless communication is IEEE 802.15.4. In the user application point of view, RIOT provides a net interface similar to the interfaces you can find with Linux. RIOT have a fully working UDP/IPv6 stack (I use it in my project). I think TCP is also working, but I never used it, same for IPv4. About Ethernet, it depends on how you would use it.
Before choosing between NDN and MQTT, let me quickly list the pros and cons
-
NDN
replace the full TCP/UDP/IP stack
is topic-oriented by design
is decentralized by design
can be used on top of TCP/UDP/IP as well as directly on the MAC Layer (ethernet, 802.15.4, …)
is still an active research topic and not standardized
currently don’t provide the ROS2 communication patterns (Pub/Sub, Services)
(but I implemented a beginning of Pub/Sub) -
MQTT-SN
is based on UDP/IP
is topic-oriented by design
provide a Pub/Sub communication that fits well ROS.
is quite standardized
is centralized by design (needs a broker)
don’t provide the ROS’ Services communication pattern
For me, as a PhD student, NDN seems more interesting than MQTT, but harder to integrate in ROS2. But the thing is that I need to compare any of my implementation to something. Since I was not able to use DDS on my hardware, I just tried these 2 solutions, which may not be the only two I will try.