#+title: Community-Lab: Exploring the Future Internet on Community Networks

* Introduction
Hello, I'm (Speaker) from (organization), I work at the CONFINE project and
I'm going to talk you about Community-Lab, a community networking testbed for
the future Internet. *##*

** Community networks
- Infrastructure deployed by organized groups of people for self-provision of
  broadband networking that works and grows according to their own interests.
- Like some Free software projects: based on open participation, open and
  transparent management, distributed ownership (a big step beyond private and
  state-owned infrastructures).
- These also translate into open, free (as in freedom) and neutral networks,
  values akin to the Free software movement.  Some have mutual agreement texts
  similar to Free software liceses.
- The EU in its Digital Agenda regards CNs as fundamental for the
  universalization of broadband networking. *##*

** The CONFINE project
- EU-financed project with several partners: CNs, research institutions and
  supporting NGOs.
- Mission: support the sustainable growth of CNs by providing the means to
  conduct experimentally driven research.
- Supports other projects advancing or extending CNs via financed Open Calls
  (now closed).
- Provides a testbed and associated tools and knowledge for researchers to
  experiment on real CNs. *##*

** Community-Lab
- CONFINE's testbed: an environment built with real hardware taking part in
  real community networks to allow realistic experimental research on network
  technologies and services.
- Mostly like PlanetLab: global scale, with experiments sharing resources on a
  best effort basis, and as few hardwired management mechanisms as possible.
- Supporting the peculiarities of CNs: distributed ownership, fairness between
  users, diversity but also instability.
- All Community-Lab's software and documentation is “free as in freedom” so
  you can use it to setup your own CONFINE testbed. *##*

** Community-Lab as community infrastructure

- CONFINE can help physically extend CNs with new Community-Lab nodes.
- Nodes can also host services like web servers, video broadcast
  stations, etc.
- Nodes can also be used as infrastructure for cloud infrastructure provided
  and managed by the community for the community: Clommunity project. *##*

* Architecture and technologies
** Testbed architecture
- Community-Lab consists of a set of nodes (managed by CN members) that follow
  the configuration in a set of servers (managed by testbed operators).
- All components in the testbed become reachable via a management network,
  implemented as a VPN IPv6 overlay.
- Researchers define experiments (so called slices) in a server.
- Nodes use a REST API to get those definitions from servers and run several
  of them simultaneously as VMs (so called slivers). *##*

** Technologies
- Nodes are connected via Ethernet to normal community devices.
- Nodes are moderately powerful computers running OpenWrt with a daemon
  written in Lua.  Slivers are implemented as Linux containers.  We are
  working on safe node upgrade using kexec.
- The GUI and REST API in servers are implemented as Django applications.
- The management network overlay is a tinc mesh VPN.
- We use Git, Redmine, Jenkins and our Virtual CONFINE Tesbed (VCT) package
  for development and testing.

# Local Variables:
# mode: org
# End:
