davidk / espressobin-lede-sqm-cake

Unofficial LEDE distribution with Cake SQM for the ESPRESSOBin Switch/SBC

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

LEDE on ESPRESSOBin (with Cake SQM)

This repository is being archived! See here for more details on where to go and what to use 🎉

What? Why? Where?

This is a non-official LEDE distribution compiled for the ESPRESSOBin SBC to take advantage of LEDE+Cake SQM.

The ESPRESSOBin is an SBC (Single Board Computer) with a solid featureset/design that makes it ideal as a tiny fileserver/router/switch.

In this application the ESPRESSOBin sits at the network edge, ensuring that network devices pulling data in or pushing data out to the Internet do so without clogging buffers upstream of itself.

The net effect is that at high bandwidth usage latency remains mostly stable.

Cake is a modern queuing discipline that works well in most applications, available in the LEDE distribution that can be installed on the ESPRESSOBin for this use.

More documentation on SQM/bufferbloat:

Using smart queue management in LEDE

Cake: the latest in sqm (QoS) schedulers (2016)

How I Maximized the Speed of My Non-Gigabit Internet Connection (Uses codel)

Introduction to bufferbloat

Installation (pre-built releases)

  1. Grab the latest release.
  2. Locate files in the distribution (relevant ones are under bin/targets/mvebu64/generic)
  3. Install it to your SD card with standard instructions.
  4. Insert into your board, power on with 12v and USB console attached
  5. screen /dev/ttyUSB0 115200
  6. Configure u-boot to boot from the SD card.
  7. Follow misc.md and release notes to finish installation.

Rolling your own release

The builder is intended to be run on a cloud machine with bandwith/CPUs to aid in a reasonable build time.

The gist is: Drop this on a VM with Debian Jessie and use run.sh. After everything is cloned, pulled and built it should drop you into a shell as openwrt.

Add feeds/a collection of packages using ./scripts/feeds install $pkgname. List available feeds with ./scripts/feeds list. Search with ./scripts/feeds search. For more documentation on feeds, check out OpenWRT's documentation.

When ready, run make menuconfig to select build options ([space bar] to select; boxes marked M are turned into packages called .ipkgs).

Important: Select options as shown in: http://wiki.espressobin.net/tiki-index.php?page=Build+From+Source+-+OpenWrt#Image_configuration (the advanced options for the kernel tree can be entered up after checking the box with the spacebar).

Save, then run make -j$(($(nproc)+1)). Kernel options haven't been updated, so make -j1 V=s1 and selecting defaults may be needed close to the end (stack a pile of coins on your enter key).

Once it finishes, everything that is supplied in the releases ends up in bin/.

About

Unofficial LEDE distribution with Cake SQM for the ESPRESSOBin Switch/SBC


Languages

Language:Dockerfile 59.2%Language:Shell 40.8%