分类 network 中的文章

使用 XDP 实现负载均衡器实战

本文地址:https://www.ebpf.top/post/xdp_lb_demo 本文作者:邱康 创建网络环境 SLB 集群路由 NAT模式 负载均衡算法 SLB 路由伪代码 随着 eBPF 的发展,我们已经可以将 eBPF/XDP 程序直接部署在普通服务器上来实现负载均衡,从而节省掉用于专门部署 LVS 的机器。 前文 分享了如何使用 xdp/ebpf 替……

阅读全文

基于 eBPF 的网络监测实践

作者:孙文杰 本文地址:https://www.ebpf.top/post/ebpf_network_exporter 公有云网络问题,是一个老生常谈的事情了。今天主要简单说明下,在内网环境下去分析 & 定位这个问题。也并不是一开始就需要 eBPF 加持的,可以从简单的基础工具到监控配合去相关比较……

阅读全文

深入浅出 BPF TCP 拥塞算法实现原理

本文地址:https://www.ebpf.top/post/ebpf_struct_ops 1. 前言 eBPF 的飞轮仍然在快速转动,自从 Linux 内核 5.6 版本支持 eBPF 程序修改 TCP 拥塞算法能力,可通过在用户态修改内核中拥塞函数结构指针实现;在 5.13 版本中该功能又被进一步优化,增加了该类程序类型直接调用部分内核……

阅读全文

【BPF入门系列-11】使用 eBPF 技术跟踪 Netfilter 数据流过滤结果

1. 网络层数据流向与 Netfilter 体系 图 1-1 为网络层内核收发核心流程图,在函数流程图中我们可以看到 Netfliter 在其中的位置(图中深色底纹圆角矩形)。图中对应的 hook 点有 5 个,每个hook 点中保存一组按照优先级排序的函数列表: NF_IP_PREROUTING:接收到的包进入协议栈后立即触发此 hook 中注册的对应函数列……

阅读全文

【BPF网络篇系列-2】容器网络延时之 ipvs 定时器篇

1. 前言 趣头条的容器化已经开展了一年有余,累计完成了近 1000 个服务的容器化工作,微服务集群的规模也达到了千台以上的规模。随着容器化服务数量和集群规模的不断增大,除了常规的 API Server 参数优化、Scheduler 优化等常规优化外,近期我们还碰到了 kubernetes 底层负载均衡 ipvs 模块导致的网络抖动问题,在此把整个……

阅读全文

【BPF网络篇系列-1】k8s api-server slb 异常流量定位分析

1. k8s master 的流量整体架构 最近 k8s 集群新增不少服务,使得集群的 Pod 数量激增,某天接受到线上 3 台 Master 前置 SLB 流量丢失的告警(SLB 为阿里 ACK Master 默认的 SLB,默认 4 层 SLB,监听端口 6443),通过 SLB 控制台查看,在 8:00 - 9:00 的时刻,整个集群的出口流量带宽已经超过 5G,而阿里的 SLB 流量带宽最大为 5Gbps,……

阅读全文