The TOFFEE Project
HOMEDOCUMENTATIONUPDATESVIDEOSRESEARCHDOWNLOADSPONSORSCONTACT


DOCUMENTATION 》 TOFFEE Documentation :: TOFFEE-1.1.24-3-rpi2

Download TOFFEE-1.1.24-3-rpi2 over HERE via Google Drive share.

Here is my VLOG Youtube video of the same which includes details about version release notes, future road-map and so on.

User Guide (Documentation)
The TOFFEE release is highly optimized and customized for hardware platforms such as x86-64 based Intel NUC and other Intel mobile computing platforms such as laptops and so on. This version (or release) is not suited and so not recommended to be used for high-end desktop and server hardware platform.

kiran@desktop-i7-5820k:/code/rpi/TOFFEE-1.1.24-3-rpi2$ ls -l
total 53356
drwxrwxr-x  2 kiran kiran     4096 Jun  8  2015 cli
drwxr-xr-x  5 kiran kiran     4096 Mar 24 11:47 daemon
drwxr-xr-x  4 kiran kiran     4096 Jun  1 23:42 gui
-rw-r--r--  1 kiran kiran     3117 Jan 24 15:58 LICENSE.txt
drwxrwxr-x 25 kiran kiran     4096 Jun  1 23:41 linux-4.5
-rw-r--r--  1 kiran kiran  8140814 Jun  1 20:11 linux-headers-4.5.0-toffee-1.1.24-3-rpi2_31-may-2016_amd64.deb
-rw-r--r--  1 kiran kiran 46461316 Jun  1 20:10 linux-image-4.5.0-toffee-1.1.24-3-rpi2_31-may-2016_amd64.deb
-rw-r--r--  1 kiran kiran     1788 Jun  1 23:44 README.txt
kiran@desktop-i7-5820k:/code/rpi/TOFFEE-1.1.24-3-rpi2$

Once you extract the downloaded tar-ball you can find the pre-compiled binary files as well the source-code as shown above.

NOTE: For more details regarding TOFFEE hardware setup and deployment kindly refer: TOFFEE deployment topology guide

NOTE: For more details regarding TOFFEE test lab setup with TOFFEE-Mocha WAN emulator kindly refer: TOFFEE-Mocha WAN emulator Lab deployment and topology guide

NOTE: For more details regarding TOFFEE Benchmarks kindly refer Documentation Section: TOFFEE Benchmarks


Installation
TOFFEE contains two parts namely web-based GUI and the custom Linux Kernel which contains TOFFEE within it. So here are the step by step instructions you can follow to install the same.

Step 1: Install the Ubuntu 16.04 LTS Desktop (64-bit) on a fresh system.

Step 2: Before installing TOFFEE GUI you have to install all the prerequisite dependencies. As a part of dependencies TOFFEE needs MySQL (now MariaDB, PHP, and other applications). So make sure it is connected to internet. The script below will install everything and configures MySQL TOFFEE GUI database and tables for you. So enter into the .../gui folder, then execute the script as shown below:

[kiran@desktop-i7-5820k ]$ sudo ./make_install_deps

After sometime it will install MySQL server and prompts the default password for the user root. Kindly enter the password "welcome" when it prompts for MySQL root password as shown below:

mysql server default password


Step 3: Now you need to install the GUI web-pages in Apache web-root (such as in /var/www/html) and install the TOFFEE Daemon. The script below does all these jobs:

[kiran@desktop-i7-5820k ]$ sudo ./make_install

NOTE: Ignore any warnings and in few cases even any errors displayed.


Step 4: TOFFEE Linux-Kernel Installation:
kindly install the following ".deb" binary files as shown below:

[kiran@desktop-i7-5820k ]$ sudo dpkg -i linux-image-4.5.0-toffee-1.1.24-3-rpi2_31-may-2016_amd64.deb 
linux-headers-4.5.0-toffee-1.1.24-3-rpi2_31-may-2016_amd64.deb

Once it is done, you can reboot the system, boot in the new TOFFEE Kernel and can configure and use the same.

NOTE: Ignore any warnings.

submit your own truebench linux cpu benchmarks

Configuration
Once you are done with Installation, you can restart the system and configure the same as shown below.

Now you can access the TOFFEE GUI via your browser as shown below. The default username is: root and the password is: welcome

TOFFEE Login


Once you login you get this first HOME page. In this case (screenshot below) already TOFFEE is configured and hence we can see the data optimization summary or in other words TOFFEE Consolidated Report.

TOFFEE_Home


You can now configure TOFFEE directly via Wizard by clicking "+ Wizard" on the side menu bar. Once you get the Wizard page, you can now select "Start" button. This button will reset everything and prepares for a fresh configuration.

TOFFEE_Wizard1


Select your LAN Port. LAN port is the port to which your local office/home network devices are connected.

TOFFEE_Wizard2


Select your WAN Port. WAN port is the port to which your external network such as Internet or WAN Network is terminated.

TOFFEE_Wizard3


Now your TOFFEE basic setup is over. Now you should get the confirmation page as shown below.

TOFFEE_Wizard4


You can now view and confirm your settings via "+ Big Picture". Big Picture is a neat graphical illustration of your overall TOFFEE settings. You can view any time as a reference and even print and file it as a record if you are a Network Admin.

TOFFEE_BigPicture


Optionally you can now check various tabs under the Settings tab. For example the "+ Ports" tab shows the status of various network ports and its corresponding Direction (such as LAN and WAN) and other generic port related information. Sometimes you can directly set port direction via this page, but it is highly recommended to use the TOFFEE Wizard.

NOTE: TOFFEE works within Linux based Layer-2 bridging module. And hence once TOFFEE is configured via Wizard you should able to see the bridging port name as "toffee" as shown below. This bridging interface is created by the user-space TOFFEE daemon automatically so that the Kernel-space TOFFEE hooks, intercepts and optimizes the packets passing through standard Linux kernel bridge.

TOFFEE_Ports


You can now configure similarly the remote end TOFFEE Device too. For more details kindly refer TOFFEE deployment topology guide.

Once your complete setup is done, you can now monitor the TOFFEE run-time live performance stats as show below:
TOFFEE_Stats


At any point of time to refer the version and release details (such as release notes) kindly refer the "+ About" page.

TOFFEE About

TOFFEE Filters:
TOFFEE Filters is a feature quite similar to a Network packet firewall. But there are multiple benefits it provides other than just acting like a firewall filtering protocols. With this feature if enabled (or set) for specified protocols, then TOFFEE completely drop these packets. And beyond that it also saves unwanted packet optimization of these packets within TOFFEE as well packets passing on to WAN Router(s) once it leaves the TOFFEE device.
Lets say for example if you have a Windows file share systems (can be desktops and NAS servers and so on). And assume you do not want to share this across WAN. In that case you can enable this filter. This will prevent TOFFEE to intercept (or catch) the SMB broadcasts and even preventing these packets reaching onto your WAN routers. As one can understand by enabling this feature your local Windows File share will still continue to work, but it will filter (or drop) all SMB broadcasts within the TOFFEE device.

The Linux Channel

In another case lets say if you want to block completely Torrent file share traffic. With this option TOFFEE should drop most of the common Torrent traffic packets. And so blocking the access. Peer-to-Peer Torrent technology uses multiple range of ports. TOFFEE filter can block majority of these well known (or defined) commonly used Torrent protocol port packets.

So TOFFEE filters works as a Firewall sometimes. But most importantly than just acting as a firewall it is an optimization tool to reduce the load on your TOFFEE device as well your WAN Routers.

TOFFEE Filters


TOFFEE Compatible Hardware:
For more details on Hardware compatibility and configuration information kindly refer the TOFFEE hardware selection guide.


Coming up, the new upcoming TOFFEE-DataCenter:



Suggested Topics:


TOFFEE - WAN Optimization


Categories

💎 TOFFEE-MOCHA new bootable ISO: Download
💎 TOFFEE Data-Center Big picture and Overview: Download PDF


Recommended Topics:

Recording Lab Monthly off-grid power-consumption readings for research ↗
Saturday' 13-Mar-2021

TOFFEE (and TOFFEE-DataCenter) deployment with web-proxy cache ↗
Saturday' 13-Mar-2021
If you want to deploy TOFFEE along with a web-proxy cache (such as Squid Proxy) you can deploy the same as shown below. TOFFEE does not cache files. TOFFEE does packet level network optimization. So if you want caching your web content you can use transparent mode web-proxy cache intercepting your WAN links. A web-proxy may reduce amount of data being processed (optimized) within these TOFFEE devices and so reduce the CPU overheads and improve its performance.

TrueBench - Linux CPU Benchmarking system ↗
Saturday' 13-Mar-2021
TrueBench is an unique open-source benchmarking system in which the core system performance and efficiency parameters are measured at extreme high resolution in the order of several million/billion ยต-seconds for a given specific task. TrueBench is a part of The TOFFEE Project research.

TOFFEE-Butterscotch Bandwidth saver software development - Update: 17-Nov-2016 ↗
Saturday' 13-Mar-2021
Here is my second software development update of TOFFEE-Butterscotch. In the previous update (28-Oct-2016) I discussed about the Alerts, etc. Whereas in my first TOFFEE-Butterscotch news update I have introduced about TOFFEE-Butterscotch research, project specifications, use-cases, etc.

Setting up a WAN Emulator within VirtualBox ↗
Saturday' 13-Mar-2021

Demo TOFFEE_DataCenter WAN Optimization VM (in VirtualBox) Test Setup ↗
Saturday' 13-Mar-2021
Demo TOFFEE_DataCenter WAN Optimization VM (in VirtualBox) Test Setup



Network Packet Queue or Buffer - Packet Flow Control, Fragmentation and MTU ↗
Saturday' 13-Mar-2021
Network Packet Queue or Buffer - Packet Flow Control, Fragmentation and MTU

TOFFEE-Mocha - WAN Emulator :: TOFFEE-MOCHA-2.0.3-0-10-nov-2018-x86-64.iso ↗
Saturday' 13-Mar-2021
Download TOFFEE-MOCHA-2.0.3-0-10-nov-2018-x86-64.iso via Google Drive share: Live bootable x86-64 Debian Stretch 9.5 with light-weight LXDE UI ISO (includes source-code): TOFFEE-MOCHA-2.0.3-0-10-nov-2018-x86-64.iso You can find the source tar-ball in the /root folder. To know more about the project kindly refer TOFFEE- Mocha: News and Updates - Documentation. To know more about current specific release, objectives, features, release notes/updates, quick demo and future road-map, you can watch my video below.

Optimization of network data (WAN Optimization) at various levels ↗
Saturday' 13-Mar-2021
WAN Network data can be optimized at various levels depending upon the network applications, protocols, topology and use-cases. So the amount of data you can optimize will depend on the strategy you choose to optimize. Such as: Network Packet level optimization, Session level optimization, File level optimization, etc.

VPN Network Optimization via TOFFEE WAN Optimization ↗
Saturday' 13-Mar-2021
VPN Networks may degrade network performance due to various packet processing overheads such as encryption and by adding extra network protocol header(s) (such as IPv4/IPv6, IPSec, etc). This may inflate near MTU sized packets and causes excessive packet fragmentation. Here are the few examples of packet processing involved in a VPN (or a VPN like) Tunnel. With TOFFEE you can optimize these packets even before they get processed on to a VPN device. TOFFEE optimizes packet contents (application payload and transport headers) so that these TOFFEE optimized packets when they get processed by VPN devices (or VPN software stack) they may never need further packet fragmentation. Here is a deployment scenario of TOFFEE with VPN devices.



Featured Educational Video:
Watch on Youtube - [435//1] 0x1d3 Who gets Laid off (or Fired) during a recession ? #TheLinuxChannel #KiranKankipati ↗

Introducing TOFFEE-Butterscotch - Save and Optimize your Internet/WAN bandwidth ↗
Saturday' 13-Mar-2021
TOFFEE-Butterscotch yet another variant of TOFFEE can be used to save and optimize your Home/SOHO Internet/WAN bandwidth. Unlike TOFFEE (and TOFFEE-DataCenter) TOFFEE-Butterscotch is a non peer-to-peer (and asymmetric) network optimization solution. This makes TOFFEE-Butterscotch an ideal tool for all Home and SOHO users.

YouTube Video Network Traffic Optimization - WAN Optimization Demo ↗
Saturday' 13-Mar-2021

TOFFEE (and TOFFEE-DataCenter) optimized Wireless Mesh-Networks - B.A.T.M.A.N [open-mesh.org (Open Mesh)] ↗
Saturday' 13-Mar-2021
TOFFEE/TOFFEE-DataCenter can be used to optimize Ad-Hoc Mobile Wireless Mesh-Networks. To learn more about the same here are some references: B.A.T.M.A.N. - https://en.wikipedia.org/wiki/B.A.T.M.A.N. Mobile ad hoc network (MANET) - https://en.wikipedia.org/wiki/Mobile_ad_hoc_network Wireless ad hoc network (WANET) - https://en.wikipedia.org/wiki/Wireless_ad_hoc_network open-mesh.org (Open Mesh) Wiki - https://www.open-mesh.org/projects/open-mesh/wiki

Demo TOFFEE_DataCenter WAN Optimization VM (in VirtualBox) Test Setup ↗
Saturday' 13-Mar-2021
Demo TOFFEE_DataCenter WAN Optimization VM (in VirtualBox) Test Setup




First TOFFEE-Mocha Code Release ↗
Saturday' 13-Mar-2021
TOFFEE-Mocha is my dream project which I thought working on it since several years. I want to make a WAN emulation software which is straight forward and simple to use. I used tc scripts along with iptables for testing my TOFFEE (and TrafficSqueezer before TOFFEE) and I am not quite satisfied with the same. As one can understand these scripts are not meant for WAN emulation.



Research :: Optimization of network data (WAN Optimization) at various levels:
Network File level network data WAN Optimization


Learn Linux Systems Software and Kernel Programming:
Linux, Kernel, Networking and Systems-Software online classes


Hardware Compression and Decompression Accelerator Cards:
TOFFEE Architecture with Compression and Decompression Accelerator Card


TOFFEE-DataCenter on a Dell Server - Intel Xeon E5645 CPU:
TOFFEE-DataCenter screenshots on a Dual CPU - Intel(R) Xeon(R) CPU E5645 @ 2.40GHz - Dell Server