Weekly Issue 2023-05-14

Original link: https://zdyxry.github.io/2023/05/14/Weekly-Issue-2023-05-14/

Article Link to Title Technology Link to Title Edit Video Using FFMPEG Merge, Crop Video Using [[ffmpeg]].
Cilium implements socket acceleration based on eBPF, uses BPF_MAP_TYPE_SOCKHASH to store socket information, BPF_PROG_TYPE_SOCK_OPS intercepts socket connection establishment operations in the system, and BPF_PROG_TYPE_SK_MSG intercepts sendmsg system calls in the system, extracts keys, and redirects data directly to the peer socket.
After using the eBPF socket to accelerate, the throughput and the size of the sent message have a linear relationship. This is because when the application sends a large message, there is almost no additional overhead, but when the message is relatively small, using the TCP/IP protocol stack, the throughput will be greater than the throughput after the eBPF socket is accelerated. This is because the TCP The /IP stack enables the Nagle algorithm by default. Nagle’s algorithm is used to solve the problem of congestion caused by the flooding of small data packets in a slow network. In this algorithm, as long as there is a TCP segment that is less than the TCP MSS size and is not confirmed, it will perform batch transmission data operations. . This batching results in more data being transferred at once and amortizes the overhead, so it can exceed the throughput after eBPF socket acceleration. However, as the size of the sent message becomes larger and exceeds the MSS, the TCP/IP stack will lose its batch processing advantage. Under these large data packet sending sizes, eBPF socket acceleration far exceeds that of TCP/IP with Nagle algorithm enabled due to its low overhead. Throughput of the IP stack.
Do you really know how to use ChatGPT? | Chapter 1: Guidelines for Prompting
It feels a bit like How-To-Ask-Questions-The-Smart-Way/README-zh_CN.

This article is transferred from: https://zdyxry.github.io/2023/05/14/Weekly-Issue-2023-05-14/
This site is only for collection, and the copyright belongs to the original author.