《程书意--基于ebpf的网络抖动诊断.pdf》由会员分享,可在线阅读,更多相关《程书意--基于ebpf的网络抖动诊断.pdf(15页珍藏版)》请在三个皮匠报告上搜索。
1、sysom:基于eBPF的网络抖动诊断第二届 eBPF开发者大会w w w.e b p f t r a v e l.c o m中 国 西 安程书意龙蜥社区eBPF技术探索sig maintainer什么是网络抖动?1.第二届 eBPF开发者大会w w w.e b p f t r a v e l.c o m中 国 西 安第 二 届 e B P F 开 发 者 大 会业务视角看网络抖动1.1业务指标rt高rps降低错误数增加为什么抖动呢?能够知道抖在哪,仍不知道为什么抖?第 二 届 e B P F 开 发 者 大 会内核视角看网络抖动1.2第 二 届 e B P F 开 发 者 大 会内核视角看网
2、络抖动1.2网络抖动根因队列慢关中断软中断慢调度慢用户程序收包慢网络抖动常见定位手段2.第二届 eBPF开发者大会w w w.e b p f t r a v e l.c o m中 国 西 安1.分析丢包、重传2.分析链路时延,会存在偏差第 二 届 e B P F 开 发 者 大 会tcpdump&wireshark2.1tcpdump抓包点tcpdump抓包点关中断、软中断慢会引起热点,可以通过perf进行热点分析缺陷:网络抖动到热点分析跨度比较大,过于依赖问题的排查人员的专业程度第 二 届 e B P F 开 发 者 大 会perf分析2.2热点函数1.软中断慢:tracepoint:irq
3、:softirq_raise和tracepoint:irq:softirq_entry2.用户收包慢:tracepoint:tcp:tcp_probe和tracepoint:tcp:tcp_rcv_space_adjust缺陷:会吐出大量的数据到trace_pipe,性能差第 二 届 e B P F 开 发 者 大 会ftrace2.3基于eBPF的网络抖动诊断方法3.第二届 eBPF开发者大会w w w.e b p f t r a v e l.c o m中 国 西 安第 二 届 e B P F 开 发 者 大 会 定位抖动连接及时间点3.11.eBPF打点:tcp_sendmsg和tcp_r
4、ecvmsg2.计算时延:T(response(last)T(request(first)3.时延超过阈值时,输出时间戳和五元组信息第 二 届 e B P F 开 发 者 大 会抖动事件采集3.2网络抖动根因队列慢关中断软中断慢调度慢用户程序收包慢网络抖动事件队列驻留时间关中断时延软中断时延调度时延用户收包时延采集的抖动事件第 二 届 e B P F 开 发 者 大 会抖动检测与分析3.3 四元组 时间点抖动连接 队列 关中断 软中断.抖动事件 四元组匹配 时间点匹配结果分析第 二 届 e B P F 开 发 者 大 会sysom整体方案3.41.sysak:诊断工具集2.服务端分析:网络诊断3.前端展示第 二 届 e B P F 开 发 者 大 会欢迎关注“酷玩BPF”公众号一起来探索eBPF技术