The goal of the Community Networks Google Summer of Code 2017 is to welcome new developers and get them started, to support the exchange of developers in different parts of the world, and to motivate students to code on local networks tool. Freifunk acts as an umbrella organisation for projects and tools for free and open community wireless networks. Students can apply for example for projects developing packages for OpenWrt (the basis of the freifunk firmwares) extending its functionality, improve firmware frameworks (e.g. LibreMesh, Meshkit, Gluon) or other useful network tools such as management server tools, monitoring services for huge mesh networks, graphic interfaces for existing tools, map extensions, p2p tools that take routing into consideration, improving wifi drivers on new hardware, routing protocols and more.
Projects and organisations under our umbrella are:
- Project Babel
- Gluon Firmware Framework
- Netmon Software Compilation
- wlan slovenija
Organization admins in 2017 are:
I am a student: Students applications will start on March, 20. Until then you can start discussing ideas with mentors and the community
- Read our blog post
- Please check out the Student Check List for more details and add your proposal below.
- Please see our organisation page at GSoC: https://summerofcode.withgoogle.com/organizations/5425897067773952/
- Participants infos, mailing lists, IRC and more at GSoC.
Our Projects and Ideas
Please visit https://projects.freifunk.net to find our ideas and projects.
If you want to submit your own idea use this repository: https://github.com/freifunk/projects.freifunk.net-contents and create a pul request.
Glossary and Links
- IT automation and configuration management tool written in Python
- Avahi is a system which facilitates service discovery on a local network. This means that you can plug your laptop or computer into a network and instantly be able to view other people who you can chat with, find printers to print to or find files being shared. This kind of technology is already found in Apple MacOS X (branded Rendezvous, Bonjour and sometimes Zeroconf) and is very convenient. - http://avahi.org/
- a loop-avoiding distance vector protocol designed to be suitable both for mesh routing and normal prefix routing, and both for wired and wireless networks. http://www.pps.jussieu.fr/~jch/software/babel/ , https://tools.ietf.org/rfc/rfc6126.txt .
- The Better Approach To Mobile Adhoc Networking, or B.A.T.M.A.N., is a routing protocol which is currently under development by the “Freifunk”-Community. - http://www.open-mesh.org
- is a distance-vector routing protocol for Linux-based operating systems specially designed for dynamic mesh wireless adhoc networks.
- is a high-level open source Python Web framework that encourages rapid development and clean, pragmatic design.
- is an open source content management platform. Equipped with a powerful blend of features, Drupal supports a variety of websites ranging from personal weblogs to large community-driven websites. - http://drupal.org/
- As of today, eMule is one of the biggest and most reliable peer-to-peer file sharing clients around the world. Thanks to it's open source policy many developers are able to contribute to the project, making the network more efficient with each release. - http://www.emule-project.net
- Freifunk Firmware
- Freimap is an Open Source visualization and analysis framework for (mostly) mesh networks, such as for example Freifunk.net. It can read many a different data source and display them as different layers. The network can be browsed and queried in real time, and a time bar allows to trace back to past events. Some statistics of the topology and network traffic may also be generated. - http://relet.net/trac/freimap
- A modular framework based on OpenWrt, aiming at making the creation of a specialized community mesh firmware as easy as possible.
- The IPFIX standard defines how IP flow information is to be formatted and transferred from an exporter to a collector. Similar to the Netflow Protocol, IPFIX considers a flow to be any number of packets observed in a specific timeslot and sharing a number of properties, e.g. "same source, same destination, same protocol". Using IPFIX, devices like routers can inform a central monitoring station about their view of a potentially larger network. - RFC 5101, RFC 5102, RFC 5103
- libipfix - The libipfix C-library implements the IPFIX protocol defined by the IP Flow Information Export working group of the IETF. - http://libipfix.sourceforge.net/
- jipfix - A java wrapper around libipfix
- LibreMesh is an initiative undertaken by community networks members of several continents that collaborate towards a common goal: to develop a set of tools that facilitate the deployment of Free Networks on any community in the world. Main tool is LibreMesh metafirmware: based on OpenWrt, eases the creation of WiFi communities, and enables existing communities to add roaming clouds to their networks. - http://libremesh.org/howitworks.html , http://github.com/libremesh
- Joomla! is one of the most powerful Open Source Content Management Systems on the planet. It is used all over the world for everything from simple websites to complex corporate applications. Joomla! is easy to install, simple to manage, and reliable. - http://www.joomla.org/
- Network Characterization Daemon is a tool to analyze the status of network devices in a Community Mesh Network (CMN) and help with their management.
- NetFlow is an open but proprietary network protocol developed by Cisco Systems to run on Cisco IOS-enabled equipment for collecting IP traffic information. - http://www.cisco.com/go/netflow
- data interchange format for networks
- is an open source network planning, deployment, monitoring and maintenance platform with emphasis on community, a modular node database for mesh and community networks. Built using Django.
- Nutch is open source web-search software. It builds on Lucene Java, adding web-specifics, such as a crawler, a link-graph database, parsers for HTML and other document formats, etc. - http://lucene.apache.org/nutch/
- Apache Lucene is a high-performance, full-featured text search engine library written entirely in Java. It is a technology suitable for nearly any application that requires full-text search, especially cross-platform. - http://lucene.apache.org/java/docs/index.html
- OBAMP is an overlay protocol: it runs only in the end-systems belonging to the multicast group. User data are distributed over a shared distribution tree formed by a set of non-cyclic UDP tunnels. OBAMP derives the distribution tree by approximating the Boruvka algorithm; the Boruvka algorithm is a classical tool (1926) to find the minimum spanning tree; thus, the distribution tree of OBAMP is an approximation of the minimum spanning tree of the connectivity topology at hand. - http://www.radiolabs.it/obamp/
- Optimized Link State Routing protocol. OLSR is a routing protocol for mobile ad-hoc networks. The protocol is pro-active, table driven and utilizes a technique called multipoint relaying for message flooding. - http://www.olsr.org
- The OpenIMP internet measurement application has been designed for distributed IP traffic and quality of service measurements supporting metrics such as volume, one-way-delay, jitter and packet loss. It integrates passive and active measurement components with analysis and visualization functions. - http://www.ip-measurement.org/openimp/
- OpenWrt is described as a Linux distribution for embedded devices. - http://openwrt.org/
- qMp http://qmp.cat
- Quick Mesh Project, a firmware for community mesh networks (CMN) and quick WiFi deployments.
- RetroShare is an Open Source cross-platform, P2P and secure communication platform.
- SNMP is used in network management systems to monitor network-attached devices for conditions that warrant administrative attention. - http://en.wikipedia.org/wiki/Simple_Network_Management_Protocol
- is a VPN solution for embedded devices using in-kernel L2TPv3 tunnels to provide high-throughput tunnels for mesh networks.
- a free CMS framework released under the GPL - http://typo3.org/
- WordPress is what you use when you want to work with your blogging software, not fight it. - http://wordpress.org/
Free Telephony Project/Open Telephony Hardware - http://www.rowetel.com/ucasterisk/
- YaCy is a scalable personal web crawler and web search engine. - http://www.yacy.net/