mirror of
https://github.com/RIOT-OS/RIOT.git
synced 2024-12-29 04:50:03 +01:00
0c67c02047
This PR depends on #1766. It contains a minimal implementation of the AODVv2 routing protocol. *Not* implemented are: - AckReqs - alternate metrics - multiple interfaces - clients and Client Networks - buffering - all addresses, TLVs, and features that are marked as optional An example application can be found at https://github.com/Lotterleben/RIOT-AODVv2/tree/master/aodvv2_demo. The implementation relies heavily on a functioning Neighbor Discovery Protocol. It might be necessary to fill the neighbor cache manually with the current state of RIOTs NDP implementation. The value of AODVV2_MAX_UNREACHABLE_NODES has been chosen arbitrarily and will be subject to future improvement. Please note that based on my experience, with the default transceiver buffer size (3) of the native port, about 2/3 of the route discoveries will fail. This has been addressed in issue #1747. It is advised to increase the transceiver buffer size when using AODVv2 as a routing protocol.
118 lines
2.2 KiB
Makefile
118 lines
2.2 KiB
Makefile
ifneq (,$(filter libcoap,$(USEPKG)))
|
|
USEMODULE += pnet
|
|
endif
|
|
|
|
ifneq (,$(filter pnet,$(USEMODULE)))
|
|
USEMODULE += posix
|
|
USEMODULE += socket_base
|
|
USEMODULE += net_help
|
|
endif
|
|
|
|
ifneq (,$(filter transport_layer,$(USEMODULE)))
|
|
USEMODULE += tcp
|
|
USEMODULE += udp
|
|
endif
|
|
|
|
ifneq (,$(filter udp,$(USEMODULE)))
|
|
USEMODULE += socket_base
|
|
endif
|
|
|
|
ifneq (,$(filter tcp,$(USEMODULE)))
|
|
USEMODULE += socket_base
|
|
endif
|
|
|
|
ifneq (,$(filter socket_base,$(USEMODULE)))
|
|
USEMODULE += sixlowpan
|
|
USEMODULE += net_help
|
|
USEMODULE += vtimer
|
|
endif
|
|
|
|
ifneq (,$(filter sixlowborder,$(USEMODULE)))
|
|
USEMODULE += sixlowpan
|
|
endif
|
|
|
|
ifneq (,$(filter rpl,$(USEMODULE)))
|
|
USEMODULE += routing
|
|
endif
|
|
|
|
ifneq (,$(filter routing,$(USEMODULE)))
|
|
USEMODULE += sixlowpan
|
|
endif
|
|
|
|
ifneq (,$(filter sixlowpan,$(USEMODULE)))
|
|
USEMODULE += ieee802154
|
|
USEMODULE += net_help
|
|
USEMODULE += net_if
|
|
USEMODULE += posix
|
|
USEMODULE += vtimer
|
|
endif
|
|
|
|
ifneq (,$(filter aodvv2,$(USEMODULE)))
|
|
USEMODULE += vtimer
|
|
USEMODULE += sixlowpan
|
|
USEMODULE += oonf_common
|
|
USEMODULE += oonf_rfc5444
|
|
endif
|
|
|
|
ifneq (,$(filter uart0,$(USEMODULE)))
|
|
USEMODULE += posix
|
|
endif
|
|
|
|
ifneq (,$(filter posix,$(USEMODULE)))
|
|
USEMODULE += timex
|
|
USEMODULE += vtimer
|
|
endif
|
|
|
|
ifneq (,$(filter cbor,$(USEMODULE)))
|
|
USEMODULE += net_help
|
|
endif
|
|
|
|
ifneq (,$(filter cc110x%,$(USEMODULE)))
|
|
USEMODULE += protocol_multiplex
|
|
USEMODULE += vtimer
|
|
endif
|
|
|
|
ifneq (,$(filter cc110x_legacy,$(USEMODULE)))
|
|
USEMODULE += transceiver
|
|
endif
|
|
|
|
ifneq (,$(filter cc2420,$(USEMODULE)))
|
|
USEMODULE += transceiver
|
|
USEMODULE += ieee802154
|
|
endif
|
|
|
|
ifneq (,$(filter at86rf231,$(USEMODULE)))
|
|
USEMODULE += netdev_802154
|
|
USEMODULE += ieee802154
|
|
endif
|
|
|
|
ifneq (,$(filter vtimer,$(USEMODULE)))
|
|
USEMODULE += timex
|
|
endif
|
|
|
|
ifneq (,$(filter net_if,$(USEMODULE)))
|
|
USEMODULE += transceiver
|
|
USEMODULE += net_help
|
|
USEMODULE += hashes
|
|
endif
|
|
|
|
ifneq (,$(filter ccn_lite,$(USEMODULE)))
|
|
USEMODULE += crypto
|
|
endif
|
|
|
|
ifneq (,$(filter netdev_802154,$(USEMODULE)))
|
|
USEMODULE += netdev_base
|
|
endif
|
|
|
|
ifneq (,$(filter rgbled,$(USEMODULE)))
|
|
USEMODULE += color
|
|
endif
|
|
|
|
ifneq (,$(filter libfixmath-unittests,$(USEMODULE)))
|
|
USEPKG += libfixmath
|
|
endif
|
|
|
|
ifneq (,$(filter defaulttransceiver,$(USEMODULE)))
|
|
FEATURES_REQUIRED += transceiver
|
|
endif
|