The TOFFEE Project
HOMEDOCUMENTATIONUPDATESVIDEOSRESEARCHDOWNLOADSPONSORSCONTACT


DOCUMENTATION 》 TOFFEE hardware selection guide

Language :: Portuguese

When you build a WAN Optimization device with TOFFEE the entire packet processing (data optimization) takes place in software layer or in other words more precisely Operating System kernel space. However if you have any compression or encryption hardware accelerator hardware card the parts of the TOFFEE packet processing modules can be offloaded to hardware layer and thus improving its efficiency.

But the focus and assumption in this guide is that you are using a generic computing platform such as PC/server/IoT device to build a WAN Optimization device with TOFFEE platform, since hardware offload option is only feasible for large OEMs and other such commercial equipment manufacturers. So it is important that based on your WAN speeds within which these TOFFEE devices are to be deployed, you need to choose your hardware specifications as suggested in this guide.

Understanding CPU Benchmarks:
Introducing TrueBench - a high resolution CPU benchmarking system:
TrueBench
TrueBench is an unique 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. For more details: visit TrueBench

Applications(use-cases) of TrueBench:

  • building low-latency high performance networking devices
  • embedded/SoC CPU (platform) evaluation
  • server and datacenter hardware evaluation
  • new product design/architecture evaluation
  • scientific applications (such as HPC, Super-Computers, etc)

Choosing the CPU for your TOFFEE device:
Here is a definitive guide which will help you to choose the CPU for your TOFFEE WAN Optimization device. TOFFEE source-code is highly modular. It can scale-up or scale-down its optimization level based on your hardware and more precisely CPU processing potential. Having said that lets assume you have enabled all optimization levels. In that context here is the table which gives an idea to choose your CPU according to your deployment specific WAN network speeds:

NOTE: This table is derived after extensive trials, testing and research over several years. And as well a co-relation between CPU's benchmarks (such as TrueBench) single thread performance benchmarks vs standard multi-thread benchmarks vs TOFFEE's real-time performance during extensive high-load packet processing.

CPU / Hardware Specs TrueBench Score WAN Speeds
Raspberry Pi3 Model B 1.2GHz 64-bit quad-core ARMv8; 1GB RAM 1,310,619,137 <= 5-10Mbps
ARM Cortex-A53(ARMv8 64bit) (ODROID-C2) 1.50 GHz, Quad Core, ODROID-C2 - IoT single board computer(SBC) 949,003,080 <= 10-20Mbps
Intel Atom D525 1.80 GHz, Dual Core, 13 W TDP 874,076,069 <= 20-30Mbps
High-end Server:
Intel Xeon E3-1240 v3
91,632,198 <= 300-600Mbps
High-end Desktop:
Intel core i7 6700K
44,200,382 <= 700-900Mbps (1Gbps approx)

So in case if you are building your own WAN Optimization device (or in general any networking device), you can benchmark with TrueBench (as suggested in the TrueBench website) and submit me your results (screen output).

TOFFEE-DataCenter: For the same/similar above specs, TOFFEE-DataCenter should provide only half the performance (WAN speeds) as compared to TOFFEE. The reason being TOFFEE-DataCenter does user-space packet processing and it is lot more versatile, flexible and modular. Due to this TOFFEE-DataCenter is capable of optimizing the data far more than TOFFEE.

Choosing the RAM/memory for your TOFFEE device:
TOFFEE device just like any typical Linux system needs just minimum amount of RAM. The entire data processing of packets will take place in your RAM. By no means TOFFEE uses your harddisk (or any secondary storage) space for packet processing. So whether it is Gigabit WAN or within 100Mbps speeds, choose RAM which has around 4-8GB of overall capacity.

However to achieve maximum optimal performance especially for high-speed WAN links, I highly recommend you to choose RAM with maximum speed. Such as DDR4 (with 2.8GHz or so). This gives the best CPU<>Memory bus interconnect speeds and improves your packet processing capabilities of your TOFFEE device. This is also sometimes applicable not just TOFFEE hardware build, but any such network devices which deals with real-time data/packet processing.

Choosing server hardware for Gigabit speeds (1G/10G and so on):Here are some examples:

Lanner FW-8894 :: 1U High Performance x86 (Dual CPU) Network Appliance for Enterprise Firewall, UTM and IPS
Lanner FW-8894
Lanner FW-8894

Lanner NCA-5210 :: 1U Mid-range Modular x86 (Single CPU) Network Appliance for Next Generation Firewall, UTM and Web Security
Lanner NCA-5210
Lanner NCA-5210

Lanner NCA-5510 :: 1U High Performance x86 (Single CPU) Network Appliance for Enterprise Firewall, UTM and IPS
Lanner NCA-5510
Lanner NCA-5510
* image courtesy Lanner Electronics Inc.

A sample low-performance TOFFEE Hardware which I built:

Intel Celeron C1037U fanless hardware
Intel Celeron C1037U fanless hardware

Intel Celeron C1037U fanless hardware

Intel Celeron C1037U fanless hardware

References:



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 power-consumption readings for Research ↗
Saturday' 13-Mar-2021
Here is my home lab monthly power-consumption readings for research. This will help to measure and monitor the overall power usage and assess the power requirements. This will help me in future purchases such as UPS, battery upgrades and so on. And as well remove replace old obsolete hardware with new less power-consuming devices.

Replacing in Lab Intel Core i7 5820K Desktop PC with Intel Celeron 1037U Mini-PC ↗
Saturday' 13-Mar-2021
As a research experiment I replaced my Intel Core i7 5820K desktop PC with my Intel Celeron 1037U Mini-PC as my everyday desktop system. This is an attempt to reduce my overall monthly power consumption. As well an attempt to do feasibility tests and research to know how far Mini PC will dominate the market in future and to study the real potential of Mini PCs.

Timelapse Screen Capture of TOFFEE-DataCenter Network Acceleration - with new RRDtool graph support ↗
Saturday' 13-Mar-2021
Timelapse Screen Capture of TOFFEE-DataCenter Network Acceleration - with new RRDtool graph support

TOFFEE-Butterscotch Bandwidth saver software development - Update: 28-Oct-2016 ↗
Saturday' 13-Mar-2021
Here is my first software development update of TOFFEE-Butterscotch. In my first TOFFEE-Butterscotch news update I have introduced about TOFFEE-Butterscotch research, project specifications, use-cases, etc. Introducing TOFFEE-Butterscotch Alerts: These are simple packet counters which corresponds to the filter type. For example if the incoming TCP-SYN packets are blocked then its corresponding alert counter will increment whenever such a packet arrives and gets filtered (dropped).

My Lab HDD and SSD logs for research ↗
Saturday' 13-Mar-2021

TOFFEE-Mocha WAN Emulation software development - Update: 17-June-2016 ↗
Saturday' 13-Mar-2021
Now I supported and finished complete GUI support of these parameters so that you can configure, store, reboot and the same will restore upon reboot. Besides I complete the TOFFEE-Mocha Big-Picture page. The Big picture is an interface where you can find all the configuration (or settings) of the TOFFEE-Mocha. This is almost similar to CISCO device show all command but in graphical representation. Sometimes a network admin can also print the Big Picture page and paste it near to the device to refer its settings.



Tracking Live Network Application Data - in a WAN Acceleration (WAN Optimization) Device ↗
Saturday' 13-Mar-2021

TOFFEE-DataCenter Live Demo with Clash of Clans game data - 30-Aug-2016 ↗
Saturday' 13-Mar-2021
Today I have done a test setup so that I can able to connect my Android Samsung Tab via TOFFEE DataCenter. Below is my complete test topology of my setup. For demo (and research/development) context I configured TOFFEE DataCenter in engineering debug mode. So that I do not need two devices for this purpose.

TOFFEE Benchmarks :: TOFFEE-1.1.28 ↗
Saturday' 13-Mar-2021
Here is the TOFFEE WAN Optimization benchmarks of the TOFFEE version: TOFFEE-1.1.28. This is the current TOFFEE development version till date (2-Jul-2016). This is a HPC TOFFEE variant meant for high-end custom build servers and high-end desktops (i.e High Performance Computing a.k.a HPC). TOFFEE built this way often needs customized kernel compilation and build such as processor specific and hardware specific tune-ups since it is highly CPU intensive (if not offloaded via Hardware Accelerator Cards).

Live demo - Data Transfer - High bandwidth to Low bandwidth ↗
Saturday' 13-Mar-2021
I always wanted to do some real experiments and research on packet flow patterns from High-bandwidth to Low-bandwidth networks via networking devices. This is something can be analyzed via capturing Network stack buffer data and other parameters, bench-marking, and so on. But eventually the data-transfer nature and other aspects is often contaminated due to the underlying OS and the way Network stack is implemented. So to understand the nature of packet flow from Higher to Lower bandwidth and vice-versa such as Lower to higher bandwidth, I thought I experiment with various tools and things which physically we can observe this phenomena.



Featured Educational Video:
Watch on Youtube - [4073//1] 0x1c9 NAS OS | Expert's take on FreeNAS vs UNRAID | My two cents | Best Tips ↗

TOFFEE-Mocha WAN Emulation software development - Update: 18-June-2016 ↗
Saturday' 13-Mar-2021
In the previous update (17-Jun-2016) I discussed about the upcoming new Random Packet drop feature along with other completed features. Now I completed the entire TOFFEE-Mocha Random packet drop feature. I completed all the kernel components and the UI support of the same. And to make GUI settings more organized I split the earlier Basic-Settings page into two separate pages namely: Packet Drop and Packet Delay. So this way it is simple to understand settings according to their functionality.

DIY TOFFEE WAN Optimization Device with Intel Celeron Mini PC ↗
Saturday' 13-Mar-2021
Here is a step-by-step DIY to build your own Intel based Mini PC WAN Optimization Device with TOFFEE. I chose this below Intel Celeron Mini PC since it is fan-less aluminium case and as well it has 2 dedicated inbuilt Gigabit Ethernet ports. You can use one for LAN Network and one for WAN Network.

PiPG - Raspberry Pi Network Packet Generator ↗
Saturday' 13-Mar-2021
PiPG is a powerful and yet simple Raspberry Pi Network Packet Generator. With PiPG you can now fabricate custom network packets and send via any Network Interface. Supports all kinds of standard Network Ports (Linux Kernel driver generated) such as Physical Network Interface ports, and an array of virtual ports such as loopback, tun/tap, bridge, etc. indispensable tool for: Network Debugging, Testing and Performance analysis Network Administrators Students Network R&D Protocol Analysis and Study Network Software Development Compliance Testing Ethical Hackers you can generate the following test traffic: L2-Bridging/Slow protocols: STP, LACP, OAM, LLDP, EAP, etc Routing protocols: RIPv1, RIPv2, IGMPv1, IGMPv2, OSPF, IS-IS, EIGRP, HSRP, VRRP, etc Proprietary protocols: CISCO, etc Generic: IPv4 TCP/UDP, etc Malformed random packets

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.




First TOFFEE Code Release ↗
Saturday' 13-Mar-2021
I started working on the new TOFFEE project (which is the fork of my earlier TrafficSqueezer open-source project) starting from 1st January 2016 onwards. Ever since I was busy in research and altering certain old features so that it is more minimal than TrafficSqueezer, a more focused agenda, deliver refined code and a broader vision. I have lined up more things to follow in the upcoming months. I want to focus about all aspects of WAN communication technologies not just on core WAN Optimization research and technology.



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 [CDN]


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