DOCUMENTATION :: TOFFEE Documentation :: TOFFEE-1.1.24-3-rpi2
Written by: Kiran Kankipati
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)
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
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
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:
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:
[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.
Now you can access the TOFFEE GUI via your browser as shown below. The default username is: root and the password is: welcome
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.
Select your LAN Port. LAN port is the port to which your local office/home network devices are connected.
Select your WAN Port. WAN port is the port to which your external network such as Internet or WAN Network is terminated.
Now your TOFFEE basic setup is over. Now you should get the confirmation page as shown below.
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.
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.
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:
At any point of time to refer the version and release details (such as release notes) kindly refer the "+ About" page.
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.
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 Compatible Hardware:
Paid Support and consultation services: If you need further technical assistance, paid support and technical consultation in building TOFFEE based custom WAN Optimization product and in case if you are a network/datacom product manufacturer, R&D/OEM looking for product design, architecture, research and engineering services you can contact me via email: firstname.lastname@example.org
Videos: Here are some of my research videos which will help you further in building your own Network Data Optimization hardware appliance.
Thank you, Kiran