The traditional NIC (Network Interface Card) is a relatively simple device equipped with Ethernet interface(s) and used to enable connectivity between machines. SmartNICs, by contrast, offer much more sophisticated capabilities and allow you to perform advanced operations on packets such as tunnel termination, applying sophisticated flow classification and filtering mechanisms on packets, metering and shaping. Usually, these functions are performed by a CPU, but smartNIC allows you to offload them and thus increase your network’s performance, as the server can then focus on its primary tasks. This is especially useful today, with the significantly increased demand for overlay networking and complex match-action processing. A typical use case for smartNICs is hyperscale cloud providers (like Google Cloud Platform, Amazon Web Services, Microsoft Azure), which use smartNICs to optimize data center performance. Also, telcos are investigating smartNICs to accelerate their VNF applications.