What is olsrd(2)?
olsrd and olsrd2 are both Link State Routing Protocol implementations optimized for Mobile ad hoc networks on embedded devices like commercial of the shelf routers, smartphones or normal computers. Sometimes these networks are called "mesh networks". olsrd and olsrd2 are the routing daemons which make up the mesh.
olsrd started as part of a Master Thesis by Andreas Tonnesen in 2004 to implement the IETF MANET groups Optimized Link State Routing Protocol (RFC 3626). The development of the implementation was continued in an open source project as the routing protocol was used by Freifunk, Funkfeuer and others to build Community Mesh Networks.
olsrd2 is a complete rewrite based on the lessons learned with olsrd (version 1) to implement the successor of RFC 3636, the Neighborhood Discovery Protocol (RFC 6130) and the Optimized Link State Routing Protocol Version 2 (RFC 7181). The basis of the olsrd2 implementation is the OLSR.org Network Framework (OONF).