class: center, middle # Building the Peer-to-Peer Internet --- # Module 1: What is mesh? 1. About this workshop series 2. Meshnets and peer-to-peer applications 3. Peer-to-peer file sharing over a meshnet 4. Investigating our technologies 5. Wrap-up & homework --- class: center, middle # About this workshop series --- # Who made this? This workshop series is made by [Toronto Mesh](https://tomesh.net), a group of volunteers using off-the-shelf hardware and peer-to-peer software to build a community mesh network. Over the course of six workshops, we will: - Learn how to build and maintain mesh networks - Familiarize with peer-to-peer applications and their values vs. centralized systems - Reflect on the politics of our technologies and what a distributed web may bring The syllabus, along with all course material is open-source and adapts resources from [Commotion Wireless](http://commotionwireless.net), [Meta Mesh](https://www.metamesh.org), [networks.land](http://networks.land), [(Re)Building Technology](http://communitytechnology.github.io/), among others. You can find it here: https://github.com/tomeshnet/p2p-internet-workshop/ --- class: center, middle # Meshnets and peer-to-peer applications --- # Home internet .center[![Home internet](slide-images/home-internet.svg)] - In 2011, [Egypt internet shutdown](https://www.accessnow.org/five-years-later-the-internet-shutdown-that-rocked-egypt/) during Arab Spring, and in 2016, [Turkey passed legislation](https://turkeyblocks.org/2016/08/25/social-media-blocked-turkey/) allowing government to suspend access - In 2017, [Hurrican Maria in Puerto Rico](https://dyn.com/blog/puerto-ricos-slow-internet-recovery/) caused significant damage to last-mile infrastructure, slow recovery of general internet access long after core infrastructure is restored --- # Mesh topology ![Mesh topology](slide-images/mesh-topology.svg) - [Great Firewall of China](https://en.wikipedia.org/wiki/Great_Firewall) routinely scans, censors, and modifies internet traffic - In 2017 leading up to the Catalan referendum, the Spanish government [took down .cat domains](https://www.theregister.co.uk/2017/09/23/spanish_government_criticized_over_catalan_internet_registry_raid/) and [had the polling station app blocked](https://www.thespainreport.com/articles/1166-170929190146-google-removes-catalan-referendum-app-from-google-play-after-catalan-high-court-issues-take-down-order) - [Equifax data breach of 2017](https://arstechnica.com/information-technology/2017/09/why-the-equifax-breach-is-very-possibly-the-worst-leak-of-personal-info-ever/) demonstrated significant security risk associated with large collections of personal information --- # Peer-to-peer applications ![Peer-to-peer applications](slide-images/peer-to-peer-applications.svg) - Distribute content to mesh nodes such that you can access them from your peers, and their peers, and so on... - Content-addressing schemes allow you to self-verify integrity of the data, so you don't have to trust the data source - Content replication across nodes + distributed communication infrastructure make it difficult for single actors to monitor, censor, or destroy information access, discourage large collections of personal information, and allows for democratic forms of moderation --- # Mesh communities - Established mesh networks such as [Freifunk](https://freifunk.net) and [Guifi](http://guifi.net/) in Europe, [Metamesh](https://www.metamesh.org) and [People's Open](https://peoplesopen.net) in the U.S., [AlterMundi](https://altermundi.net) in Argentina, and many more - Common activities include flashing and putting up off-the-shelf routers, building free software and custom hardware, developing technical literacy material, providing low-cost internet access, community organizing locally and globally (such as [Battle Mesh](https://battlemesh.org)) - Large variations across different mesh communities in their approach and ambitions --- # Peer-to-peer file sharing on a mesh Each Raspberry Pi: - Has a unique name in the form of `
.local` - Advertises a WiFi SSID `
` which you can connect with `password` as password - Connects to other in-range Raspberry Pis via a second WiFi interface to form a mesh We will use the [InterPlanetary File System (IPFS)](https://ipfs.io), a peer-to-peer hypermedia protocol, to share content with each other on our own network. You can think of the Raspberry Pi as your home router and modem connecting to your Internet Service Provider (ISP), except now it has a direct line to other content-serving mesh nodes just like itself, and has superpowers because it runs like a full computer. --- # Investigate our technologies Select a popular website or application and investigate based on the following criteria: 1. Mission & Ownership 2. Design & Access 3. Community & Local Impact 4. Profit & Sustainability 5. Teaching & Learning .footnote[_This activity is based on [Explore Community Technology: Investigate Technology](https://communitytechnology.github.io/docs/intro-ct/investigate-tech/)._ ] --- class: center, middle # Wrap-up & Homework --- # Recap - Presented the general state of peer-to-peer networks and services - Experimented with a distributed peer-to-peer application run over off-internet mesh network infrastructure - Touched upon community models for creating and managing technologies _Questions?_ --- # Homework Next session we will dive into networking on GNU/Linux and explore the layers between the application we used today and the cable or WiFi radio connecting these nodes. 📝_Watch this awesome video at home!_ [Routing and the Postal System](https://www.youtube.com/watch?v=n7NBgJAhzZ0) from the [Metamesh YouTube channel](https://www.youtube.com/channel/UCGEnntxbGKMU9J9GIZ1LQUQ): - Compares IP routing to postal delivery system - Explains acronyms like IP, DHCP, and NAT - Explains how addresses are distributed and routing in hierarchical ISP networks - Provides background for future discussions about self-addressing of IPv6 and mesh based "flat" routing