olsr org funkfeuer freifunk
play

Olsr.Org // FunkFeuer // Freifunk Aaron Kaplan - PowerPoint PPT Presentation

Olsr.Org // FunkFeuer // Freifunk Aaron Kaplan <aaron@lo-res.org> Henning Rogge <hrogge@fgan.de> Oct 2008 Presentation at OLSR Interop 08, Ottawa, CA Disclaimer can only speak about Freifunk out of experience and I know the


  1. Olsr.Org // FunkFeuer // Freifunk Aaron Kaplan <aaron@lo-res.org> Henning Rogge <hrogge@fgan.de> Oct 2008 Presentation at OLSR Interop 08, Ottawa, CA

  2. Disclaimer • can only speak about Freifunk out of experience and I know the folks there, I am not Freifunk (if anybody is) • can speak about FunkFeuer && olsr.org

  3. Overview • What and who is FunkFeuer || Freifunk ? • The Olsr.org’s olsrd routing daemon • Our way to OLSRv2 • Plans for the future

  4. Who?

  5. current olsr.org core team: Hannes Gredler (juniper) L. Aaron Kaplan (cert.at) Bernd Petrovitsch (firmix.at) Henning Rogge (fgan.de) Sven-Ola Tücke (freifunk) + lots of contributors

  6. folks @ Funkfeuer || Freifunk • FunkFeuer Vienna: around 300 members. 30 core members • Freifunk: ? members, around 800 nodes in Berlin • who? everybody who wants to participate

  7. folks @ Funkfeuer || Freifunk • crazy hackers • creative ideas are valued • next project: rogue fibre in the canalization ;-) • regular Beerings • many CS students, IT folks, professionals but also doctors, amateur radio pros, etc.

  8. folks @ Funkfeuer || Freifunk • crazy hackers • creative ideas are valued • next project: rogue fibre in the canalization ;-) • regular Beerings • many CS students, IT folks, professionals but also doctors, amateur radio pros, etc.

  9. What?

  10. FunkFeuer || Freifunk

  11. FunkFeuer

  12. FunkFeuer • city wide OLSR(.org) mesh network covering all of Vienna (2 mil. inhabitants), Graz and rural areas of Austria

  13. FunkFeuer • city wide OLSR(.org) mesh network covering all of Vienna (2 mil. inhabitants), Graz and rural areas of Austria • community wifi project.

  14. FunkFeuer • city wide OLSR(.org) mesh network covering all of Vienna (2 mil. inhabitants), Graz and rural areas of Austria • community wifi project. • Vienna net: ~ 30 km diameter

  15. FunkFeuer • city wide OLSR(.org) mesh network covering all of Vienna (2 mil. inhabitants), Graz and rural areas of Austria • community wifi project. • Vienna net: ~ 30 km diameter • distributed ownership

  16. FunkFeuer • city wide OLSR(.org) mesh network covering all of Vienna (2 mil. inhabitants), Graz and rural areas of Austria • community wifi project. • Vienna net: ~ 30 km diameter • distributed ownership • COTS hardware

  17. FunkFeuer • city wide OLSR(.org) mesh network covering all of Vienna (2 mil. inhabitants), Graz and rural areas of Austria • community wifi project. • Vienna net: ~ 30 km diameter • distributed ownership • COTS hardware • ~250 roofs

  18. FunkFeuer • city wide OLSR(.org) mesh network covering all of Vienna (2 mil. inhabitants), Graz and rural areas of Austria • community wifi project. • Vienna net: ~ 30 km diameter • distributed ownership • COTS hardware • ~250 roofs • “because we can. Because the nodes are the network”

  19. FunkFeuer tech facts

  20. FunkFeuer tech facts • one single uplink (1 GBit)

  21. FunkFeuer tech facts • one single uplink (1 GBit) • right across the street to VIX

  22. FunkFeuer tech facts • one single uplink (1 GBit) • right across the street to VIX • small colo center

  23. FunkFeuer tech facts • one single uplink (1 GBit) • right across the street to VIX • small colo center • mixture of 5GHz bridges and 2.4GHz mesh nodes. Mostly broadcom chips. Some atheros (FONs)

  24. FunkFeuer tech facts • one single uplink (1 GBit) • right across the street to VIX • small colo center • mixture of 5GHz bridges and 2.4GHz mesh nodes. Mostly broadcom chips. Some atheros (FONs) • public IP ranges

  25. FunkFeuer tech facts • one single uplink (1 GBit) • right across the street to VIX • small colo center • mixture of 5GHz bridges and 2.4GHz mesh nodes. Mostly broadcom chips. Some atheros (FONs) • public IP ranges • semi-planned / semi random structure

  26. Typical FunkFeuer roof • on the r oof (LOS!) • 3 linksys WRT 54GL: omni and/or directional antennas • 1 or 2 5Ghz bridges • 1 switch • LAN cable into apartment

  27. Freifunk • Germany’s FunkFeuer • same ideas, started at the same time • Berlin, Leipzig, Rostock, Weimar, ... • strong connection to CCC, openmoko, openwrt • totally uncoordinated wi fi network (Berlin) • many “window” Linksyses

  28. Leipzig Freifunk net

  29. similar networks with olsr.org • meraka institute (.za): IPv6 only (John Hayes) • athens wireless metropolitan network • uses BGP + partly olsr.org • > 2400 nodes • Harvard citysense net

  30. AWMN (http://wind.awmn.net/?page=gmap)

  31. History

  32. History

  33. History • initial experiments at SCII.nl (wireless Amsterdam, mobile mesh) 2002/2003

  34. History • initial experiments at SCII.nl (wireless Amsterdam, mobile mesh) 2002/2003 • olsr.org fi rst working and portable solution we found. Open source!

  35. History • initial experiments at SCII.nl (wireless Amsterdam, mobile mesh) 2002/2003 • olsr.org fi rst working and portable solution we found. Open source! • parallel development: Berlin, Vienna

  36. History • initial experiments at SCII.nl (wireless Amsterdam, mobile mesh) 2002/2003 • olsr.org fi rst working and portable solution we found. Open source! • parallel development: Berlin, Vienna • Freifunk Firmware (Sven-Ola)

  37. History • initial experiments at SCII.nl (wireless Amsterdam, mobile mesh) 2002/2003 • olsr.org fi rst working and portable solution we found. Open source! • parallel development: Berlin, Vienna • Freifunk Firmware (Sven-Ola) • ~ 2006: olsrd becomes a CPU bottleneck with network growth -> BATMAN project in parallel with olsr-ng effort. Revolution vs. Evolution.

  38. History • initial experiments at SCII.nl (wireless Amsterdam, mobile mesh) 2002/2003 • olsr.org fi rst working and portable solution we found. Open source! • parallel development: Berlin, Vienna • Freifunk Firmware (Sven-Ola) • ~ 2006: olsrd becomes a CPU bottleneck with network growth -> BATMAN project in parallel with olsr-ng effort. Revolution vs. Evolution.

  39. History of olsr.org • Andreas Tønnesen’s diploma thesis • portable and runs on Linux -> we took it and improved it. andreto said “OK” • ETX extension • Fisheye • plugin mechanism • dyn_gw, basic multicast, txtinfo, dot_draw, secure, ...

  40. Portability • linux (arm, mips, mipsel, i386, xscale...), FONs • winxp, vista • *BSD • Nokia N770, N810 • openmoko • 30MHz embedded linux webcam ;-) • winCE missing

  41. New ports • iPhone (less than 1% CPU load -> battery life!) • iPod touch • Nokia 770 • Nokia N810 • google android!

  42. Current state • the networks are constantly expanding • olsrd’s CPU optimization is fi nished • olsr.org is being reworked (slow process, lots of work and re-testing in the fi eld) • bene fi t: we have a big test bed • always have to upgrade with compatibility

  43. Soon • Robin Firmware for FONs with OLSRd

  44. Overview • What and who is FunkFeuer || Freifunk ? • The Olsr.org’s olsrd routing daemon • Our way to OLSRv2 • Plans for the future

  45. Our work on the CPU bottleneck • at 100 nodes losing packets already • -> what to do? • “OLSR does not work” or... • let’s improve it ??? • -> “olsr-ng” == “let’s improve it”

  46. CPU bottleneck • Dijkstra was O(n^2) instead of O(n log n) • memory churn • inef fi cient datastructures

  47. CPU bottleneck • after all optimizations (~ 1 year ): runs on a 30MHz embedded web cam with ~30 % CPU load in Berlin Freifunk • < 5% CPU load on a linksys in FunkFeuer • < 1% CPU load on an old i386 laptop

  48. OLSR UML Test server Tests with 1500-2000 virtual Linux instances

  49. Olsr.org routing daemon (1)

  50. Olsr.org routing daemon (1) • Machine independant core

  51. Olsr.org routing daemon (1) • Machine independant core • OS speci fi c parts

  52. Olsr.org routing daemon (2)

  53. Olsr.org routing daemon (2) • AVL tree

  54. Olsr.org routing daemon (2) • AVL tree • Linked lists

  55. Olsr.org routing daemon (2) • AVL tree • Linked lists • Some hashtables (old code, still needs cleanup !)

  56. Olsr.org routing daemon (3)

  57. Olsr.org routing daemon (4)

  58. Olsr.org routing daemon (4) • Hopcount metric with hysteresis

  59. Olsr.org routing daemon (4) • Hopcount metric with hysteresis • ETX based on timers/message sequence no.

  60. Olsr.org routing daemon (4) • Hopcount metric with hysteresis • ETX based on timers/message sequence no. • ETX based on timers and package seq.no.

  61. Olsr.org routing daemon (5)

  62. Olsr.org routing daemon (5) • Implementation is important

  63. Olsr.org routing daemon (5) • Implementation is important • Routing metrics

  64. Olsr.org routing daemon (5) • Implementation is important • Routing metrics • Scales up to at least hundreds of nodes (on embedded hardware). Probably ~ 2k nodes now

  65. Overview • What and who is FunkFeuer || Freifunk ? • The Olsr.org’s olsrd routing daemon • Our way to OLSRv2 • Plans for the future

  66. Our way to OLSRv2 (1)

Download Presentation
Download Policy: The content available on the website is offered to you 'AS IS' for your personal information and use only. It cannot be commercialized, licensed, or distributed on other websites without prior consent from the author. To download a presentation, simply click this link. If you encounter any difficulties during the download process, it's possible that the publisher has removed the file from their server.

Recommend


More recommend