DES Simple and Extensible Routing-Framework for Testbeds (DES-SERT)
DES-SERT is the DES Simple and Extensible Routing-Framework for Testbeds that is realized as user space library and can be used to implement proactive, reactive, and hybrid routing protocols. DES-SERT is included in the Debian GNU/Linux distribution and is also available on this website. A tutorial on how to use the framework can be found here. An extra library provides additional functionality that is useful for most routing daemons.
The following protocols have been implemented with DES-SERT by the Computer Systems and Telematics, Distributed Embedded Systems research group at Freie Universität Berlin:
- Ant Routing Algorithm (ARA)
- Ad-hoc On-demand Distance Vector Routing (AODV)
- Better Approach To Mobile Ad-hoc Networking (B.A.T.M.A.N.)
- Dynamic Source Routing (DSR)
- Gossip routing
- Optimized Link State Routing (OLSR)
More information about the implementations are available here. If you have got any questions, feel free to contact us. We are very interested in getting some feedback.
The DES-SERT project and all related routing protocol implementations are managed and supported by Bastian Blywis.
News
libdessert 1.07
20110908 - 1.07
- Added helper functions: dessert_timevaladd, dessert_timeval2ms, dessert_ms2timeval,
dessert_timevaladd2
- The sysif MAC is only derived from the eth0 address, if this MAC addr is not yet
used. This allows to run multiple daemons on the same node.
- Added "show uptime" CLI command.
- Added dessert_get_uptime_ms function
- libtool version = 1.13.1
20110720 - 1.06
- Fixed heap corruption bug
- Replaced size_t type by uint32_t
- Replaced some left u_int* by uint*_t
- Replaced uint8_t by bool where semantically appropriate
- Fixed several issues in log message prints
- Fixed display of scheduled time for tasks with unknown function name
- Fixed two compiler warnings due to missing function declarations in header
- libtool version = 1.12.1
20110720 - 1.05
- Fixed bugs in packet filter
- Removed legacy defines that are replaced by enums
- Replaced int return values by enum types
- Added enum for periodics return codes
- The filter function is now called always before the mesh callbacks are invoked
- Added min, max macros (if they are not already defined)
- Added token bucket implementation with 3 policies
- Token bucket support unlimited or tail drop queueing of packets
- "show tasks" CLI command to show the currently registered (periodic) tasks
- Implemented data structure and functions to map function pointer to names
- libtool version = 1.11.1
20110712 - 1.04
- Added CLI show function for monitor configuration
- Added packet filter support (untested)
- Merged dessert-extra
- Beautified code (a little bit)
- libtool version = 1.10.1
20110621 - 1.03
- When binding to the IPv6 socket for the CLI fails, IPv4 is tried
- Introduced loglevel LOG_TRACE > LOG_DEBUG for even more verbose output
- Several preprocessor macros in dessert.h are now contained in enums
- Renamed variable from bool to boolean to enable include of stdbool.h
- All printing of MAC addresses realized by MAC and EXPLODE_ARRAY6 macro
- meshiface is not const -> remove const
- libtool version = 1.9.1
20110530 - 1.02
- configure will now fail when uthash or iw are missing
- Introduced alternative names for some flags in dessert.h
- libtool version = 1.8.1
20110530 - 1.01
- Re-written monitor code
- More monitor interface information availabe to routing protocols
- add dessert_utils.c with dessert_parse_mac
- Milisecond resolution for log messages
- add alternative log output format (disabled by default)
- General code cleanup
- use MAC-Macro & EXPLODE_ARRAY6-Macro
- add DL_LENGTH macro
- remove %M printf pattern
- Configure includes checks for more dependencies
- Replaced mkinstalldirs with MKDIR_P
- libtool version = 1.7.1
20110330 - 1.00
- Merged RSSI branch / monitor interface support
- Added uthash and utlist header check in configure.ac
- libtool version = 1.6.1
- 423 reads
libdessert 0.99
20110305 - 0.99
- Logs can now be flushed every x seconds when zlib is used
- Full string is now evaluated to update the loglevel (previously only first character)
- libtool version = 1.5.1
20110226 - 0.98
- Added mutex for lock file writes
- libtool version = 1.4.1
- 1367 reads
libdessert-extra 0.2
20100709 - 0.2
- Added mesh interfaces are not set in the "up" state anymore
- The dessert_cli_cmd_addsysif callback allows now to specify the MTU
- 1393 reads
libdessert 0.97
20101012 - 0.97
- Increased maximum number of characters in a log message from 1024 to 4096
- Current libtool version = 1.4.1
20100801 - 0.96
- Merged Android branch; SNMP support can now be disabled
- Fixed zlib bug
- Removed deprecated DESSERT_LOG_DEBUG and DESSERT_LOG_NODEBUG flags
- Unified log output format (always a newline before the function and line number is printed)
- Current libtool version = 1.3.1
- 1382 reads
libdessert 0.95
libdessert version 0.95 has been released. Actually, we skipped a public release of 0.94, as the only change is mostly relevant for our testbed. Please have a look in the ChangeLog file for a list of all changes.
- 1588 reads
- 11319 reads
- Printer-friendly version