As per the formal definition, “an algorithm is a finite sequence of instructions to solve some problem”.

To understand the above definition, we should first understand the meaning of the word “problem” used above. A problem is anything the you’re trying to solve computationally, it can be as simple as

  • Finding the maximum of two numbers
  • Arranging elements in ascending or descending order.
  • Finding the shortest path in a map or a graph.
  • Moving a drone from one point to another.
  • Suggesting the correct spelling for incorrect word
  • and so on.

Now, let’s pick one problem and then try…


Overview

Image for post
Image for post
Photo by Thomas Jensen on Unsplash

A network interface card (NIC) can be configured with multiple receive queue (Rx). This is done to improve the throughput (i.e, the number of packets that can be processed per second) of the device and to achieve higher throughput, more than one CPU is used to poll packets from the device independently. Each CPU polls for its assigned Rx queue, but still we need a strategy to distribute the packets over all the queues, otherwise all the packets will go to one queue and only one CPU will be utilised.

Few Terminologies

RSS Input Fields

The RSS input fields plays a vital role in deciding…


Image for post
Image for post
src: dpdk.org

The Data Plane Development Kit (DPDK) is a library that accelerates the packet processing workloads and runs on a wide variety of CPU architectures.

The DPDK library provides a broad set of data structures which are suitable for different purposes like doing fast memory lookup, doing longest prefix match etc. These data structures are optimised to give the best performance on any of the supported CPU architecture. All the data structures are NUMA aware which means the required memory is always allocated from the RAM from the same socket where the CPU core is located. …

Anubhav Choudhary

Get the Medium app

A button that says 'Download on the App Store', and if clicked it will lead you to the iOS App store
A button that says 'Get it on, Google Play', and if clicked it will lead you to the Google Play store