The new wave of strikes trend: the integration of network and computing

From the beginning of the birth of the computer, "computing" the term it changes with the times and constantly enrich their content, IT practitioners in order to improve computational efficiency but also to "calculate" given more support, high performance computing, cloud computing, quantum computing in various areas of computing by enabling. The era of development is inseparable from the network, the topic of this article is to discuss - how to integrate network and computing.

 

Why should we care about the convergence of computing and networking?

Computing and networking have been inseparable, efficient and converged network computing has become the development trend of the future of computing. We can also see the hardware and software associated with the computer (such as a virtual machine running a general-purpose CPU, traditional operating systems and programming languages) are increasingly being used for all kinds of networking. Such as switches, routers, and a network NIC devices are also becoming programmable, to allow the completion of various general-purpose computing in the network.

In the data center, represented by high-density computing clusters, the application was diversified and distributed and greater network bandwidth has also brought huge amounts of data to calculate the demand for I / O processing is also soaring, the new virtual networking capabilities also further erode count of CPU power, while offloading the work of the GPU is inadequate.

Network bandwidth, far more than the computing power

At present, the server network bandwidth is facing rapid growth. 200Gbps Ethernet card has become mainstream, manufacturers are constantly developing new 400Gbps NIC, and 1Tbps soon become the next target. On the other hand, processing network I / O space computing capacity is shrinking. For example, for a typical 32-byte key value using key-value store, in order to maintain line speed 400Gb / s in the case of 100 X86 CPU cores, a core approximately 500 cycles to process each key-value pair. Even in this ideal assumption that only a negligible computing power capable of performing some of the LLC or memory access in the network stack, leaving the application logic of things pitiful. In other words, the future of wire-speed I / O processing requirements of the application is destined to be limited CPU and memory.

Over the years, a variety of underlying network layer function has been applied to the network adapter hardware. These constitute a backbone network hardware offload I / O processing, ranging from simple scatter gather I O, the checksum is calculated, and the packet segmentation / accelerator to complete the transport layer, such as TCP offload and RDMA.

Commercial server for low latency processing demands wire-speed I / O has reached an unprecedented height, the hardware can not keep up with rapidly changing data center network workloads. For example, for access to the network-attached storage compression technology, the new standard formats and tunnels are in rapid development, more than the ASIC development and deployment lifecycle. Further, from the data center network paradigm proprietary intermediate cartridge, such as firewalls and intrusion detection systems, into a virtual network function (VNF), which further promote the computational requirements. VNF to the network processing burden on the CPU, and also the calculation put forward higher requirements.

Challenge CPU and GPU

Network I / O performance issues have long been a major concern, with its emphasis on eliminating the operating system network stack inefficiencies and optimize the NIC-CPU interaction. The method currently used to achieve VNF is completely bypass the network stack, directly accessing the original packet from the user-level library (e.g. DPDK). Further, CPU and NIC hardware provides several mechanisms to improve the efficiency of I / O processing, e.g., the data directly introduced CPU LLC (DDIO), and by reducing the cache contention between the CPU core (e.g., Receive Side Scaling) and decreasing the frequency of the interrupt (e.g., interrupt modulation) to improve scalability. But even with these enhancements, still require multiple CPU cores at a speed of 10Gbps network to perform a public function. In addition, the existing system will be because of CPU resource contention caused by increased latency, packet processing performance fluctuate.

 

GPU also for accelerating network packet processing applications (e.g., PacketShader, SSLShader, SNAP and GASPP). Unfortunately, due to the PCIe data transfer and control GPU, GPU introduces a high latency overhead. Further, in most I / O intensive workloads (e.g., routing), the TCO the GPU gain and power efficiency has been questioned, used only on the CPU latency hiding techniques similar performance can be achieved at lower latency. Currently on the use of GPU-accelerated network processing there are a lot of controversy. Accompanied by a series of challenges, network computing and efficient integration imperative.

Network computing: network and computing convergence boosters

Calculating (In-network computing) network is a new research area in recent years, focusing on the network computing, using the new programmable network device (e.g., an ASIC programmable switches, network processor, FPGA and programmable NIC) function, calculated from the CPU to the network.

Although the concept of network computing can be traced back two decades ago, but many people think that now the computing era really play a role in the era of network hardware and software innovation is the combination. From a system perspective, the calculation of the network definition implies no need to add new equipment to the network, because you have to use a switch and NIC. Therefore, the calculation of the network overhead is small, since no additional space, cost, or idle power. In addition, the network is calculated in a transaction is terminated by the network transaction, can reduce the load on the network. To date, the computing network is implemented on three types of devices: FPGA, SmartNIC and programmable switches.

 

Introducing programmable switch-ASIC and the rise of the driving force is calculated SmartNIC network. In the past, the function of the network device is fixed, only supports the manufacturer-defined function. In contrast, programmable network devices allow users to achieve their desired function when writing code in high-level language. Today, the main language used in the field programmable network is P4, is an open source, domain-specific languages. Initially, the main language is used to define a new protocol and network-related functions (e.g., in-band telemetry network). Soon, researchers began on the basis of language and platform of the more complex functionality to the network.

Computing network advantages: high throughput, low latency, low power consumption

The main advantage of the network is computed performance, including throughput and latency. Today, many network devices support sub-microsecond delay, in case of non oversubscription little difference. However, this does not reduce a major source of delay. Since the calculation is a processing means within the network within the network, which means that the transaction is terminated in its path without reaching the end-host, thereby saving the delay introduced by the host terminal, and computing devices within the network node to a network between a host terminal . Especially in a cloud environment, service providers are struggling to overcome delays in service, thus reducing latency is very important.

The second advantage can personalize certain packet which is the attribute data processing rate. Switch ASIC processing speed of up to 10 billion packets per second, so it may support several billion times per second operation. Such switches are designed as pipe, a continuously moving data without Caton. In most cases, even if the operation (packet) is suspended (queued), for example, when the shared resource competition (congestion), the processing of other packets will not be affected. Applications that use computing to achieve within the network and compared to similar products based on a host of performance a thousand times.

 

There is also a network computing unexpected benefit is energy consumption. Although we believe that the network switch is a power-hungry devices, but if you only consider the operation per watt, network switches more attractive, per watt support millions of operations, which means that for some applications, such efficiency of the process a thousand times higher than software-based solutions. For example, in a switch, the "cost" one million keys stored query is less than one watt. Since the network switch is part of the user network, and therefore most of the power consumption has been included in the packet forwarding process, and calculates the cost of the network is very small, only a few percent of the total power consumption of the switch.
View More

Guess you like

Origin www.cnblogs.com/sdnlab1509/p/11316565.html