Intel Columbiaville: 800th series of network cards with 100G, ADQ and DP support

Intel has decided to reduce its technological gap in the network segment to its main competitor, the Israeli Mellanox, by introducing 100-Gigabit 800-series network adapters with the code name Columbiaville.

In the previous 700th generation of network chips, Intel relied on simplicity and availability, so 40-Gigabit processors of the Fortville family did not have most of the hardware offloading mechanisms and were positioned as entry-level solutions. In the new series, Intel realized that network controllers in the modern world have more requirements than before, so the 800 series will first of all please those who were waiting for RDMA support (iWARP & RoCE V2). This feature, which significantly speeds up the exchange rate between the storage system and the client, has been one of the main advantages of Mellanox since the 3rd generation of their ConnectX boards (by the way, now the Israelis are already selling the 6th generation of ConnectX).

Given that in modern data centers, more and more traffic is generated by applications that exchange data with each other before entering the front-end, Intel considered that the network controller can also be assigned mechanisms for prioritizing and controlling the order of data transmission, for example, to caching servers in NoSQL databases. In other words, at the driver level, the network card understands which application it is communicating with and how to prioritize the installation of new connections and maintenance of existing ones. These two technologies are called Application Device Queues (ADQ) and Dynamic Device Personalization.

Application Device Queues (ADQ)

ADQ support has been available in Linux since kernel 4.19, and you can use it with your existing infrastructure without any code changes.

What is ADQ?

  • Building and managing traffic queues depending on the application

How does ADQ work?

  • Filters app traffic according to a set of requests
  • Executable branches in the application interact with the request queue inside the ADQ
  • mechanismThe network card may restrict outgoing traffic depending on the application

What do these big words mean in practice? In fact, we have a normal QoS mechanism, which is regulated not depending on the MAC address or network port, but depending on the application used. What does this mean?

Predictability of the application with which data is exchanged, reduced latency when working with applications, and increased throughput of the application server.

Of Course, the first thing that comes to mind is the question, what kind of application is it that is sensitive to the operation of a 100-Gigabit network? Intel cites the example of a NoSQL Redis database that uses RAM for data storage in its advertising brochures. Redis is used where fast fetches of a value corresponding to a given key are required, whether it is a string, a text field, or even a file. When storing millions of files, for example, finding the right one in Redis is faster than in any file system. Since Redis is a single-threaded application, a typical installation can use dozens of Redis instances, each of which generates about a million transactions per second.

As the number of connections increases, the ADQ mechanism can reduce client-side latency by two to three times, and approximately double the number of transactions per second.

Dynamic Device Personalization (DDP)

Did you want hardware packet offloading, which you missed so much in the 700th and 500th versions of the chips? Here's a fully programmable Offload mode: the network card analyzes network packets and processes not only the external packet header, but also the internal one. The simplest example is iSCSI, where the network card unloads not only the TCP packet headers, but also the iSCSI Protocol, and so on - with any load. In other words, if you have a new network Protocol in your system, you can entrust its unloading to the network card. Without hardware Offload, it is impossible to achieve 100-Gigabit speed on modern processors.

DDP Profiles can be configured when the operating system is loaded, determined by the firmware to the chip, or even changed while the server is running.

In General, hardware Offload is one of the main criteria for choosing network cards from service providers. Companies such as Amazon AWS and Microsoft Azure place a heavy load on network controllers, thus saving CPU resources.

Conclusion

The World is moving towards 5G, and these networks will be one of the main drivers of the growing demand for fast 100-Gigabit network adapters. Intel products are primarily low cost compared to the same Mellanox network chips, which have a much wider list of supported functions. Of course, DDP can be considered as a universal offload of any Protocol, but how it will show itself in real conditions can only be seen by tests. It is a pity that the 800 series of Intel network chips does not support PCI Express over Fabric and GPU over Fabric technologies, which are most in demand in systems with artificial intelligence, but apparently Mellanox is not in a hurry to create a full-fledged competition.

Mikhail Degtyarev (aka LIKE OFF)
08/04.2019


Read also:

What CPU uses Cloudflare: intel not inside!

The heaviest loads on the CloudFlare network are Firewall and serverless services, which makes CPU the most expensive item in The cloudflare server budget. The company's approach to server design is very different from traditional content deliv...