DAWN – A decentralized WiFi Controller


Hi,
I’m Nick. I study Computer Engineering at the TU Berlin. It is my first time participating in Google Summer of Code. I am realizing a decentralized WiFi controller.

DAWN is the first decentralized WiFi controller for OpenWrt. The controller provides access to valuable information, e.g., all connected stations, their capabilities, and information about all participating nodes. Moreover, DAWN provides load balancing to increase the network performance by controlling the clients association.

What’s missing?
An important aspect of the controller is the simple installation. Everybody, even people with limited technical knowledge, should use this controller to increase their network performance at home. Until now, DAWN requires a special patched OpenWrt to run. So a user needs to compile his own image. The first thing I have to do is to bring the last patches upstream. Some of the patches were rejected and that is why I have to rewrite different functionality and create new pull requests. Furthermore, I have to extend the libiwinfo library to get all necessary informations from the OpenWrt system.
After this, the configuration of the nodes should be simplified. So far, the user has to configure all participating nodes individually. I want to implement some bootstrapping to automatically configure the participating routers.
After simplifying the installation and configuration, I want to visualize the information of the participating nodes with a graphical user interface.
The last step is to improve the controller functionality by adding mechanisms like a channel interference detection and other useful features. Moreover, this step contains to improve the load balancing.

In my next blog post, I will write about why some of my OpenWrt patches were rejected, how I have to extend the libiwinfo. However, if this steps are successful everybody will be able to simply install DAWN without the need to patch OpenWrt.

DynaPoint Final

Hi everyone,

this is the final blog post about DynaPoint. Short recap: I created a daemon which regularily monitors the Internet connectivity and depending on that activates and deactivates the proper access points. That way the handling with APs would become easier as you already could tell the status by the AP’s SSID. I also created a LuCI component for it to make the configuration more easy.

In the past weeks I was able to add some new features, fix bugs and complete the LuCI component. Especially the latter was really interesting and gave me some knowledge about how LuCI works.

In the last post I mentioned that it’s better to verify Internet connectivity by using wget instead of just pinging an IP address.
Consequently I switched from Pingcheck to wget. I also added an option to use curl instead of wget. With curl you also get the option to choose the interface for the connection.
When you provide internet via VPN-interface you can explicitly check the connection of that interface now. The reason why I don’t use curl as default is because of curl’s rather large size. For some routers with only 4 MB of storage it might be too much.

I also added an “offline threshold”, which will delay the switch to offline mode. So for example when you set the interval to 60 seconds and offline_threshold to 5, the switch to offline mode will be made after 5 cycles of checking (=300 seconds).

So how does an example configuration look like?

To use dynapoint just add dynapoint_rule ‘internet’ and dynapoint_rule ‘!internet’ in the desired sections in /etc/config/wireless:

config wifi-iface
    option device ‘radio0’
    option network ‘lan2’
    option mode ‘ap’
    option encryption ‘none’
    option ssid ‘freifunk’
    option dynapoint_rule ‘internet’

config wifi-iface
    option device ‘radio0’
    option network ‘lan2’
    option mode ‘ap’
    option encryption ‘none’
    option ssid ‘freifunk-maintenance’
    option dynapoint_rule ‘!internet’

The configuration of dynapoint takes place in /etc/config/dynapoint:

config rule ‘internet’
    list hosts ‘http://www.example.com’
    list hosts ‘http://www.google.com’
    option interval ’60’
    option timeout ‘5’
    option offline_threshold ‘3’
    option add_hostname_to_ssid ‘0’
    option use_curl ‘1’
    option curl_interface ‘eth0’

All of that can also be configured via LuCI:

If you want to try out DynaPoint for yourself please visit https://github.com/thuehn/dynapoint for more information.

Future work

Currently there is only support for one AP per state. In the next weeks I want to add support for multiple APs per state.
Also I want to add support for more rules. At this time there is only support for one rule “internet”. I want to make this more generic and provide support for custom rules.

Acknowledgements

I want to thank my mentor Thomas Hühn for his excellent mentoring and great ideas during this project. 
Also of course thanks to Freifunk for letting me realize this project and thanks to Google for organizing GSoC.

DynaPoint update

Hi everyone,

here are some updates regarding DynaPoint. The idea was to create a daemon, which regularily checks the Internet connection and changes the used access point depending on the result. That way the handling with APs would become easier as you already could tell the status by the AP’s SSID.

A daemon with basic functionality is already working. After installation, there is one configuration step necessary.
You have to choose in /etc/config/wireless which AP should be used, if Internet connectivity is available and which one if the connectivity is lost. You can do that by adding “dynapoint 1” or “dynapoint 0” to the respecive wifi-iface section.

You can also configure dynapoint via LuCI, although it’s not yet complete.
I was struggeling a bit with it, because the documentation of LuCI is a bit minimalistic…
Here is a screenshot of how it currently looks like:

Next steps

To verify Internet connectivity, it is probably better to make a small http download than just ping an IP address.
Using “wget –spider” should be suitable for that.

Also, I will see if I can get rid of the required configuration step in /etc/config/wireless in the next weeks and provide fully automatic configuration.

If you want to test dynapoint for yourself, just go to https://github.com/thuehn/dynapoint.

DynaPoint – A dynamic access point validator and creator

Hi everybody,

 

I am Tobias, a Computer Science student at the TU-Berlin. I am glad to have the opportunity to participate at GSoC for Freifunk this year.

 

My project aims at making the handling with access points in OpenWrt/LEDE easier. The goal is defined as follows: Find an easily configurable solution (with reasonable defaults) for making the wireless access SSID in OpenWrt/LEDE dependent on a set of network conditions.

 

What does that mean? Consider the following example. You have a wireless access point with SSID “Freifunk”. Suddenly for whatever reason the AP looses Internet connectivity without anyone noticing it. When users now connect to this AP, expecting a working Internet connection, they get frustrated, because they can’t check their emails or surf the Internet.

 

With DynaPoint I want to develop a daemon, which regularly monitors the Internet connectivity. When it’s lost, the SSID will automatically be changed. In this example it could be changed to “Freifunk-offline”. When Internet connectivity is re-established, the SSID would automatically be changed back to “Freifunk”.

This way users as well as admins get informed about the state of an access point just by looking at the SSID.

 

To verify Internet connectivity the first obvious step would be to do a ping. For this purpose there already exists a package called pingcheck, which I am planning to use. Further steps could include DNS-Queries and HTTP-Downloads.

 

Speaking about easy configuration and reasonable defaults, I want to require as little configuration steps as possible, but also provide enough configuration options to be adjustable to different kind of setups. Ideally the configuration will also be possible via the LuCI web interface.

 

Until next time,

 

Tobias

Freifunk WLAN in und auf dem Rathaus Kreuzberg: Freier Internetzugang trotz Störerhaftung

Besucher des Bürgeramts im Rathaus Kreuzberg haben über ein neu eingerichtetes Freifunk-WLAN ab sofort kostenlosen, freien und zeitlich uneingeschränkten Zugang zum Internet. Neben einem Access Point im Warteraum in der dritten Etage wurden auch auf dem Dach des elfstöckigen Gebäudes drei WLAN-Router installiert. Diese Router haben durch Richtantennen eine Reichweite bis zu zehn Kilometer und stellen Verbindungen zu dem bereits über den Dächern von Berlin bestehenden Freifunk-Netz und den darin angebundenen Internetzugängen her.

Die Bezirksverordnetenversammlung beschloss im Frühjahr den Start eines WLAN-Pilotprojekts, welches dann von Freifunkerinnen und Freifunkern um André Gaul zusammen mit dem Bürgerdeputierten Andreas Pittrich realisiert wurde. Unterstützt wurde das Projekt durch Dietmar Zachler von der Rathaus-IT und Stadtrat Hans Panhoff. Alle Geräte wurden von Freifunk installiert, das Bezirksamt stellt die Aufstellorte und Strom für die Geräte zur Verfügung.

Die Zugänge zum Internet werden von Bürgerinnen und Bürgern innerhalb des Freifunk-Netzes bereitgestellt. Durch das Bereitstellen eines Internetanschlusses geht man jedoch ohne weitere Maßnahmen wegen der in Deutschland noch immer geltenden Störerhaftung ein juristisches Risiko ein, da man für die Durchleitung von fremdem Internet-Verkehr haftbar gemacht werden kann. Um die Störerhaftung zu umgehen, leitet Freifunk die Daten verschlüsselt durch ein VPN über Schweden und zeigt damit auch die Unsinnigkeit der Störerhaftung auf. Die gleiche Technik benutzt auch die Freifunk Freedom Fighter Box, die seit Juni 2012 kostenlos verteilt wird, um freies WLAN an öffentlichen Plätzen bereitzustellen und gegen die Störerhaftung zu protestieren.

Freifunk unterstützt den Gesetzentwurf der Digitalen Gesellschaft, der Bürgerinnen und Bürger sowie Gewerbetreibende, die einen Internet-Zugang via WLAN anbieten, mit kommerziellen Internetprovidern haftungsrechtlich gleichstellt. Aufgrund der durchweg positiven Erfahrungen im Rathaus Kreuzberg hofft Freifunk, bald weitere Installationen auf und in anderen öffentlichen Gebäuden durchführen zu können.

[via Juergen Neumann]

Links

Dokumentation: wiki.freifunk.net/Berlin:Standorte:Bezirksamt_Kreuzberg

Beseitigung der Störerhaftung, Gesetzentwurf DigiGes: digitalegesellschaft.de/portfolio-items/storerhaftung-beseitigen/

Freifunk Freedom Fighter Box: freifunkstattangst.de/2012/06/14/aktion-gegen-storerhaftung-anonym-im-wlan-an-offentlichen-platzen-mit-freifunk/

BVV Beschluss: www.berlin.de/ba-friedrichshain-kreuzberg/bvv-online/vo020.asp?VOLFDNR=4948&options=4

Freifunk Halle Interview Loop von Tmk

Freifunker aus Halle (Saale) haben einen Film gemacht und erklaeren die Motive und Begeisterung fuer freie Netze.

“Freifunk Halle Interview Loop” von Tmk, Oktober 2009, Creative Commons: by-nc-sa.

Freier Informationsaustausch ist ein Grundrecht – Keine Rechtssicherheit um den Preis der Freiheit

Zur Bundesratsinitiative “Änderung der Störerhaftung für WLAN-Betreiber – Freies WLAN in Berlin”[1] der Großen Koalition in Berlin erklärt der Förderverein Freie Netzwerke e.V.:
 
Wir begrüßen sehr, dass sich die rot-schwarze Koalition für Anbieter freier WLAN-Zugänge einsetzt, denn die Anwendung der sog. “Störerhaftung” macht die Betreiber von offenen WLAN-Zugängen für den Datenverkehr ihrer Nutzer juristisch verantwortlich. Die Störerhaftung ist damit Angstmacher und größtes Hemmnis für die Weiterentwicklung Freier Netze. 
 
Gleichzeitig fragen wir uns jedoch, welche “Anforderungen an die jeweils einzusetzenden Schutzmaßnahmen” gesucht werden und warum man zwischen befugter sowie unbefugter Nutzung differenziert. Hierzu möchten wir feststellen, dass solche “erforderlichen Schutzmaßnahmen” technisch wie juristisch äußerst fragwürdig sind und für kommerzielle Anbieter bislang nicht vorgesehen sind. 
 
Diese Forderungen stehen sowohl dem Fernmeldegeheimnis wie den allgemeinen Grundsätzen des Telemediengesetz entgegen, in denen es heißt: “Diensteanbieter (..) sind nicht verpflichtet, die von ihnen übermittelten oder gespeicherten Informationen zu überwachen” (§7 Satz 2)  und “für fremde Informationen (..) nicht verantwortlich” (§8 Satz 1). 
 
“Ob des Grundrechts auf vertrauliche und verschlüsselte Kommunikation lässt sich der Austausch von Daten, praktisch nicht verhindern – hierfür technische Auswege zu suchen ist schlichtweg naiv und gefährdet die Integrität der Informationsnetze” warnt Netzaktivist wetterfrosch. Er erinnert, dass der Gesetzestext vom Anbieter explizit fordert “die Nutzung von Telemedien (..) anonym oder unter Pseudonym zu ermöglichen, soweit dies technisch möglich und zumutbar ist” (§13 Satz 6).
 
“Im Gegensatz zu kommerziellen Providern welche aus guten Gründen nicht in den Datenstrom eingreifen dürfen, wird dies im Moment von privaten WLAN-Betreibern – wie Freifunkern – verlangt” erklärt André Gaul und fordert, dass eine solche Benachteiligung privater Initiativen verhindert wird.
 
Freifunk ist eine seit 2002 existierende nicht-kommerzielle Initiative für freie und selbstverwaltete Funknetzwerke. Freifunker aus ganz Deutschland stellen an über tausend Punkten freie Internetzugänge zur Verfügung. “Wir stehen für diskriminierungsfreie, dezentrale und für jeden nutzbare Möglichkeiten zum offenen Informationsaustausch” stellt Freifunker cven klar.
 
Weitere Informationen
 
[1] Antragstext der SPD/CDU-Fraktionen des Abgeordnetenhaus Berlin “Änderung der Störerhaftung für WLAN-Betreiber – Freies WLAN in Berlin”
 
Kritik des Medienrechtsanwalts Thomas Stadler
 
TMG §7 Allgemeine Grundsätze
 
TMG §8 Durchleitung von Informationen
 
TMG § 13 Pflichten des Diensteanbieters
 
Störerhaftung in der Wikipedia
 
Kontakt
    Website von Freifunk
 
    @c_v_e_n / cven@c-base.org

    Matthias @wetterfrosch Mehldau
    wetter@netzpolitk.org

    André Gaul, wissenschaftlicher Mitarbeiter an der TU Berlin
    @andrenarchy 
    gaul@math.tu-berlin.de

Freies WLan in Berlin mit Freifunk – Veranstaltungsinformation

Wie angekuendigt findet am 31. Maerz eine Veranstaltung zu Freiem WLan in Berlin mit Freifunk im Radialsystem in Berlin stat. Der Ablaufplan ist wie folgt:

18:30h Einlass
19h Beginn

Vorträge

  • Begrüßung & Einführung: Wulf und Stefan Ziller
  • Was ist Freifunk? Jürgen Neumann
  • Netz- und Dienstleister-Trennung: Ulf Kypke
  • Wichtige Punkte bis dahin:
  • Freifunk auf dem Kirchendach: Sven Ola-Tücke
  • Freifunkhain: Ulf Kypke
  • Beuth-Schule und Freifunk in der Wissenschaft, Afrika:
    Alexander Morlang
  • OLPC & VillageTelco: Elektra Wagenrad
  • Recht: Dürfen, aber Haften?: Jochen Bokor
  • Wirtschaftlicher Nutzen: Iris Rabener, Ingo Rau (via cven)
  • Szenarien zur politischen Umsetzung: Stefan Ziller
  • Offene Diskussion: Statements gern von allseits gesehen

Ab 21h: Ausklang im Foyer & Empfang mit Speis und Getränk

Ort/Datum

Mittwoch, 31. März 2010, 19 – 21 Uhr
Radialsystem V GmbH – www.radialsystem.de
Holzmarktstraße 33 – S-Bhf. Ostbahnhof

Freies WLAN für Berlin / Freifunk für Berlin!

[via Cven (rebroadcasted)]

Viele wollen es – viele reden darüber – wie kann’s gehen?

Der Gedanke eines stadtweiten, drahtlosen Internetzugangs wurde lange hoch gehandelt, haber bis heute nicht umgesetzt. Ungeachtet dessen haben sich im Freifunk-Projekt zahlreiche Menschen selber per Wireless-LAN WLAN) vernetzt.

Berlins freifunk.net und die Abgeordnetenhaus-Fraktion der Grünen laden ein, diese offene und freie Struktur kennenzulernen, bzw. Möglichkeiten und Handlungsoptionen für die digitale Zukunft Berlins zu diskutieren. Ziel der Veranstaltung ist die Debatte für ein "freies WLAN für Berlin" zu qualifizieren.

Lange gewollt, aber vorerst gescheitert: Der politische Wille Berlin flächendeckend den drahtlosen Zugang zum Internet mittels WLAN zu ermöglichen fiel auf unfruchtbaren Boden. Drei Jahre versuchte der Senat vergebens ein Unternehmen zu gewinnen, ein solches Angebot umzusetzen.

Seit rund acht Jahren vernetzen sich in Berlin viele Bürgerinnen und Bürger selbst miteinander – unabhängig von politischer Förderung oder wirtschaftlichen Interessen. Das Projekt freifunk.net entwickelt technische Verbesserungen und ermöglicht den Netzzugang selbst in Internet-technisch sonst unerschlossenen Gegenden.

In mehreren Kurzvorträgen werden Freifunk, die dahinter steckenden Prinzipien und Techniken, wissenschaftliche und wirtschaftliche Seiten sowie der den rechtlichen Hintergrund erläutert. Im zweiten Teil soll die Frage wie wir einem "Freien WLAN" in Berlin näher kommen können, im Mittelpunkt stehen.

Mittwoch, 31. März 2010, 19 – 21 Uhr
Radialsystem V GmbH – www.radialsystem.de
Holzmarktstraße 33 – S-Bhf. Ostbahnhof

und um das genug Schnittchen geordert werden können, bitten wir um eine kurze Mail an netzpolitik@buero-ziller.de – aber auch spontan ist jedeR herzlich eingeladen.

Links:

Originalmeldung: https://cven.crew.c-base.org/serendipity/index.php?/archives/41-Freies-WLAN-fuer-Berlin-Freifunk-fuer-Berlin!.html

Vortrag zum Thema Rechtliche Gefahren offener WLANs

Am kommenden Donnerstag, den 4. Februar 2010 findet in Mainz ein Vortrag zum Thema "Rechtliche Gefahren offener WLANs und Lösungsansätze" statt. Veranstalter ist die Freifunk-Initiative Mainz in Zusammenarbeit mit dem Arbeitskreis Vorratsdatenspeicherung Rhein-Main.

Zugängliche WLANs sind eine hilfreiche Einrichtung, bergen aber auch rechtliche Risiken für Betreiber wie Nutzer. Traurige Berühmtheit hat etwa die von der Rechtsprechung entwickelte ‘Störerhaftung’ erlangt, dank der selbst das altruistische, unentgeltliche Betreiben eines WLAN-Hotspots ein kostspieliges Vergnügen werden kann. Ahnungslose Nutzer wurden festgenommen. Welche Probleme gibt es und wie lassen sie sich lösen?

Der Referent ist Jurist vom Fachbereich Rechtswissenschaft der Universität Frankfurt. Los geht es um 19 Uhr. Eingeladen sind alle an der Thematik Interessierten.

Ort: pengland (Anfahrt)
Eintritt: frei
Start: 19 Uhr