在无BTF的内核中使用fd寻找关联的socket结构

上一篇文章讲了eBPF Tracepoint和Kprobe,这一篇文章我们来看一下如何应对无BTF的老版本内核,以及如何只使用fd寻找关联的socket结构。 这篇文章的大背景,是需要关联fd、socke...

<span title='2023-08-22 20:50:11 +0800 CST'>2023-08-22</span>

使用eBPF Tracepoint和Kprobe跟踪内核活动

简介 eBPF老生常谈了,这里就不多介绍了,我们直接来看看Tracepoint和Kprobe。 Kprobe是Linux内核中的一个功能,可以实现无感知、动态切入任何内核活动中,并且收集调试和性能信息,一...

<span title='2023-08-21 19:14:08 +0800 CST'>2023-08-21</span>

自制高性能白盒交换机——缝合OVS-DPDK和Go语言

我有一台小主机,来自Lenovo的M73t,CPU型号为i3-4130T,内存为DDR3仅有8GB。这篇文章,我们就一起来看看,如何用这一台已经过时的、仅有两个物理核心的机器,做一台高性能的白盒交换机...

<span title='2023-03-25 22:41:21 +0800 CST'>2023-03-25</span>

DPU如何加速云原生容器网络?

当今时代下,高性能网络的需求日益增加,在图形渲染被独立成GPU、神经网络计算被独立成NPU后,网络数据的加速也被提上日程,将网络数据处理转移到DPU上,成为了业内共识。 这篇文章,趁着我手里刚好有几张D...

<span title='2023-03-11 20:58:56 +0800 CST'>2023-03-11</span>

在ARM平台的Linux上运行JetBrains远程开发

前言 相信大多数围绕Linux开发的开发者们会很喜欢这篇文章,当然如果你用VSCode就是另外一回事了(逃 大多数情况下,我不会选择Linux系统作为我主力使用的桌面操作系统,毕竟它稳定是真的稳定,但是桌...

<span title='2022-11-26 21:33:23 +0800 CST'>2022-11-26</span>

基于eBPF的Continuous Profiler如何解析符号表?

最近看了两个项目pyroscope1和parca2,这两个都是开源的可观测项目。pyroscope实现了基于eBPF的无侵入观测能力,鉴于parca实现得不是非常优雅(至少我用着觉得非常难受),本文就...

<span title='2022-11-08 22:11:23 +0800 CST'>2022-11-08</span>

原生gRPC与RESTful HTTP API并包——gRPC-Gateway实践

众所周知,Google的gRPC体系可谓是相当好用,在有protoc这样的工具加持下,原本要维护调用侧和服务侧两部分代码,现在写完proto文件直接交给protoc编译一下即可,可谓是减少了不少工作量...

<span title='2022-06-28 20:47:23 +0800 CST'>2022-06-28</span>

看看Linux Kernel——基于Macvtap互通问题追溯根源

Linux上遇到一个问题——macvtap的虚拟接口无法和parent互通,这个问题让我不禁感到奇怪。以往都是同一个parent上的macvtap间互访,还真没有留意过访问parent是什么样一个情况...

<span title='2022-03-23 20:51:11 +0800 CST'>2022-03-23</span>

Kubernetes与KubeSphere上车指南

2022年了,开发需要各种应用时,不用再像以前那样挨个手工安装一整天了,直接上K8S就好啦~ 这次,博主我上了一套3节点的集群,其中包含1个Master、2个Worker,前端选择了开源的KubeSph...

<span title='2022-02-26 16:56:11 +0800 CST'>2022-02-26</span>

使用Linux内核的ftrace跟踪eBPF问题

好久没写文章了,最近忙于各种事情,再加上过年放假学习,计划文章队列排的老长了。在此,新年第一篇文章,就先祝一下大家新年快乐哈~ eBPF香是香,但是竟然还有内核不支持?博主最近遇到了这么个情况,eBPF...

<span title='2022-02-15 22:56:11 +0800 CST'>2022-02-15</span>