Sneakernets: Bringing the Mountain to You
Upcoming SlideShare
Loading in...5

Sneakernets: Bringing the Mountain to You







Total Views
Views on SlideShare
Embed Views



0 Embeds 0

No embeds



Upload Details

Uploaded via as OpenOffice

Usage Rights

CC Attribution-ShareAlike LicenseCC Attribution-ShareAlike License

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
Post Comment
Edit your comment

Sneakernets: Bringing the Mountain to You Sneakernets: Bringing the Mountain to You Presentation Transcript

  • Sneakernets: Bringing the Mountain to You Sameer Verma, Ph.D. Professor Information Systems Department San Francisco State University San Francisco, CA 94132 USA [email_address] @sameerverma Seminar Department of Computing University of the West Indies, Jamaica Unless noted otherwise
  • Content Store Transport Use
  • sneakernet Walking data across buildings on a storage device from one computer to another. High bandwidth, high latency. “ The theoretical capacity of a Boeing 747 filled with Blu-Ray discs is 595,520,000 Gigabytes, resulting in a 245,829 Gbit/s flight from New York to Los Angeles.” – Wikipedia View slide
  • ~ 70% View slide
  • Internet Access
  • Can information flow like water?
  • A water “battery”. Can we build information batteries?
  • Viva La Revolución Can we spark a paradigm shift by providing equitable access to information all over the world?
  • Somebody is finally thinking of the children! To create educational opportunities for the world's poorest children by providing each child with a rugged, low-cost, low-power, connected laptop with content and software designed for collaborative, joyful, self-empowered learning. — OLPC Mission Statement,  It's an education project, not a laptop project. — Nicholas Negroponte  
  • in the beginning...
  • ooh! laptop! (July 2007)
  • Give 1 Get 1 – Nov 2007
  • Next thing I know... De facto founder of OLPC San Francisco
  • Then I run into this guy... Click here to learn more...
  • Next thing I know... De facto founder of OLPC Jamaica!
  • A tremendous “Thank you!” to the UWI community for making this happen. Providence Basic School, Kingston, Jamaica August Town Primary School, August Town, Jamaica
  • OLPC
  • Mission OLPC's mission is to empower the world's poorest children through education We aim to provide each child with a rugged, low-cost, low-power, connected laptop. To this end, we have designed hardware, content and software for collaborative, joyful, and self-empowered learning. With access to this type of tool, children are engaged in their own education, and learn, share, and create together. They become connected to each other, to the world and to a brighter future.
  • Worldwide 40+ countries, 30+ languages, 2.2+ million laptops, 350+ applications
  • Where no computers have gone before...
  • School Galadima, Abuja City, Nigeria See
  • Samkha village located in the suburbs of northern Thailand See
  • Khairat school is India's pilot site. See
  • Ulaanbaatar, Mongolia
  • Ethopia
  • Ghana
  • Cameroon
  • Afghanistan refugee camp, Pakistan
  • Colombia
  • Peru
  • Rwanda
  • Iraq
  • Haiti
  • Solomon Islands
  • Nepal
  • Uruguay: Every primary school child has an XO.
  • postage stamps too!
  • 2.2 million XO laptops and counting See Google Maps Deployments worldwide Also see:
  • Learn more...
  • XS: OLPC School Server The Internet in a Box (unsung hero too!)
  • What does the XS look like? Fantasy View
  • What does the XS look like? Reality View
  • What does the XS look like?
    • Any x86 box with requisite memory, crunch and storage can be the XS.
      • It could also be a ARM machine in the near future...
    • Ideally, we want a machine that
      • Consumes very little power
      • Has the necessary crunch
      • Portable
        • Pocketable, even?
      • Very forgiving for power brownouts, heat, dust, etc.
        • Kinda like the XO.
  • Services that the XS runs
    • Networking
      • DNS
      • DHCP
      • NAT/Masquerading
      • Bridging
    • Identity management
      • Seamless XO login
      • Single One Time Password (SOTP) on server
    • Activation
      • Theft deterrence
  • Services that the XS runs
    • Collaboration
      • XMPP via ejabberd
    • Storage
      • Files and attachments for courses
      • Backup files
      • Other media
    • Backup
      • Journal/Datastore backup
    • XO Software updates
      • Push updates including firmware and OS images
    • Activity server
      • Pushing activity bundles
  • Networking
    • Provides networking infrastructure for the school.
    • Acts as an Internet gateway (if backhaul exists)
      • Includes HTTP proxy (optional)
      • Content filter (optional)
    • Supports Wi-Fi:
      • Ad-Hoc
      • Mesh (IEEE 802.11s draft)
      • Infrastructure (Access Point)
  • Identity management
    • Single One Time Passwords (SOTP) for maintenance.
      • Remote ISP maintenance, etc.
    • OLPC XO Browse
      • authenticates seamlessly with Moodle
      • Moodle talks to ejabberd for permissions, etc.
    • First XO to access Moodle
      • This XO becomes admin.
      • This XO can assign other teachers, course creators, and other such roles
  • Collaboration
    • XMPP-based collaboration via ejabberd.
      • Ejabberd is a XMPP (jabber) server written in erlang.
    • Uses gabble mode under telepathy in Sugar.
      • Gabble allows for server-based collaboration
    • XOs switch to salut mode in case no XS is found.
      • Salut allows for peer-to-peer collaboration
    • Activities such as Chat, Write, Memorize use XMPP to collaborate.
  • Storage
    • Much of the storage lives in /library partition.
      • Mount /library on external USB disk or other media and expand storage.
      • Run rest of the system off a CF or SD card (solid state)
    • Files can be served as
      • links via Moodle
      • links via Apache (add Apache config)
  • Backup
    • Three processes:
      • Traffic control
        • provides basic "traffic control" to manage load.
      • Backup-complete script
        • Creates links for latest snapshot.
      • Daily cleanup
        • enforces a per-user "soft" quota.
  • Updates
    • Pushing updates to OS image and firmware via rsync.
  • Layout (Access Points)
  • Hardware vs Load Benjamin Tran's Master's thesis : jmeter to load and and nmon to record the load
  • Hardware recommendations
    • Schools with less than 40 laptops:
      • use XS-on-XO:
      • Requires a SD card (4GB, preferably class 6)
      • External USB hard drive (may need own power)
      • USB-Ethernet for backhaul.
  • Fit PC and Fit PC2
    • Fit PC works well and is comparable to the XO-1 in performance.
      • More configurable than the XO-1.
      • Replace a SSD in the FitPC to make it cooler and more power efficient.
    • Fit PC2 has heat problems.
      • Intel Atom runs too hot
        • Surprise, surprise.
        • Maybe glue on a large heat sink?
  • Hardware recommendations
    • Schools with up to 100 laptops:
      • 1GHz CPU, 1GB RAM,
      • at least 2GB disk storage per laptop.
      • Something in the mini ITX form-factor works well.
      • Fanless units are better
  • Hardware recommendations
    • For up to 500 laptops:
      • dual-core 2GHz CPU
      • 2 to 4GB RAM
      • at least 2GB disk storage per laptop.
      • This type of a machine usually works in environments with good power resources.
  • Hardware recommendations
    • More than 500 laptops
      • Server-class dual CPU
      • 4 to 16GB RAM
      • at least 2GB disk storage per laptop.
      • Data center hosting is also an option.
  • School Server
  • Screenshots XS Moodle Screen Shots
  • Main page
  • Front page settings
  • Front page roles
  • List of users
  • Roles and permissions
  • Presence service
  • Antitheft controls
  • Add a course
  • Site files
  • Question bank
  • A zip file, which includes content and structure for the entire course! Moving courses ...deploy in Madagascar! Create in San Francisco...
  • XS: Internet in a box No Internet? No power? No problem :-)
  • Pathagar: A Book Server Open Publication Distribution System Pathagar : Path + Agar पाठागार : पाठ + आगार A Practical Hindi-English Dictionary
  • Problem: Dissemination of Media in remote places
    • Books
      • Portable Document Format (PDF)
      • Electronic Publication format (ePub)
      • Hyper Text Markup Language (HTML)
    • All digital “media” are a collection of bits. So we can also disseminate
      • Music
      • Video
      • Images
  • Internet Access
  • How do we get books to here ?
  • OPDS: Open Publication and Distribution System
      • OPDS Specification
        • The Open Publication Distribution System (OPDS) Catalog is a syndication format for electronic publications based on Atom RFC4287 and HTTP RFC2616.
        • Catalogs enable the aggregation, distribution, discovery, and acquisition of electronic publications.
        • OPDS Catalogs use existing or emergent open standards and conventions, with a priority on simplicity.
  • Book Server
    • Book Server = OPDS Server
    • Repository
      • Add books, along with title, author, language, description, etc.
      • Serve
        • Atom-based OPDS feed (XML)
        • HTTP-based web pages that allow searching, listing, download, etc.
  • Pathagar (पाठागार)
    • Written in Python
    • Requires python-django as a framework
    • Creates a website for managing and accessing books
    • Allows you to add books + metadata on books
    • Catalog allows for listing
    • Search feature
    • OPDS Feed, which is Atom (XML) based.
    • Books are served books via HTTP to:
        • Browsers
        • Get Books activity
    Written by Sayamindu Dasgupta Get it at
  • Accessing Pathagar from Sugar
    • Get Books Activity
    • Browse Activity
  • Bookserver vs Schoolserver
    • Schoolserver
      • Course-based taxonomy (School)
      • Courses, teachers, students, assignments, assessment
      • Based on Moodle
    • Bookserver
      • Catalog-based model (Library)
      • Books, catalog, searches, description.
      • Based on OPDS
  • Catalog
  • Add a book
  • OPDS feed
  • OPDS feed – source view
  • Get Books Activity
  • Pick a repository
  • Searching for Gulliver
  • Found Gulliver
  • Get Book
  • Downloading Gulliver's Travels
  • Pathagar
    • Work in progress
    • Fits deployment models where a curriculum isn't a central theme
    • Library or media access center approach
    • Easy to replicate and scale/federate
  • Pathagar OPDS Book Server Get it at Pathagar : Path + Agar पाठागार : पाठ + आगार
  • Some day this part will be fast and cheap Until then, we sneakernet it!
  • Slides made with the “free stuff”