IT博客汇
  • 首页
  • 精华
  • 技术
  • 设计
  • 资讯
  • 扯淡
  • 权利声明
  • 登录 注册

    Weekly Issue 2023-05-14

    Yiran\'s Blog发表于 2023-05-14 00:00:00
    love 0
    文章 链接到标题 技术 链接到标题 使用 FFMPEG 编辑视频 使用 [[ffmpeg]] 合并、裁剪视频。 Cilium 基于 eBPF 实现 socket 加速 使用BPF_MAP_TYPE_SOCKHASH 存储 socket 信息, BPF_PROG_TYPE_SOCK_OPS 拦截系统中 socket 建立连接操作 , BPF_PROG_TYPE_SK_MSG 拦截系统中 sendmsg 系统调用,提取 key,将数据直接重定向到对端 socket。 使用 eBPF socket 加速之后,吞吐量和发送消息大小呈线性关系。这是因为当应用程序发送较大的消息时,几乎没有额外的开销,但是当发送消息比较小时,使用 TCP/IP 协议栈,反而吞吐量会大于 eBPF socket 加速之后的吞吐量,这是由于 TCP/IP 栈默认开启了 Nagle 算法。Nagle 的算法是用来解决小数据包在慢速网络中泛滥导致拥塞的问题,在该算法中只要有一个 TCP 段在小于 TCP MSS 大小的情况下未被确认,就会进行批处理传输数据操作。这种批处理导致一次传输更多的数据并分摊开销,所以能超过 eBPF socket 加速之后吞吐量。但是随着发送消息越来越大,超过 MSS,TCP/IP 栈就会失去其批处理优势,在这些大数据包发送大小下,eBPF socket 加速凭借其低开销远远超过启用 Nagle 算法的 TCP/IP 栈的吞吐量。 你真的会使用 ChatGPT 吗? | 第一章:Guidelines for Prompting 感觉有点像 How-To-Ask-Questions-The-Smart-Way/README-zh_CN.


沪ICP备19023445号-2号
友情链接