稳定又好用——RouterOS+OpenWRT旁路由家庭网络

大家好,最近想了想决定在博客开辟“网络方案”的板块,结合博主我所熟悉的MikroTik、H3C、华为等商用设备以及基于Linux的网络系统(如常规发行版Linux、VyOS、OpenWRT),为大家推...

September 10, 2022

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

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

June 28, 2022

网络系统基准测试——DPDK Pktgen使用记录

我们自己的数据面系统如何打流测试呢?如果使用Linux协议栈上的测试工具往往是测不出来真正的数据的,而且受制于协议栈,我们最终也无法得到真实的收发情况,因此这时候我们要请出基于DPDK开发的一个打流测...

May 20, 2022

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

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

March 23, 2022

Kubernetes与KubeSphere上车指南

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

February 26, 2022

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

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

February 15, 2022

贴贴地气——解决Go语言没有原生RCU一致性原语的问题

众所周知,Go语言里没有原生的RCU一致性原语,这在一些特定场景下,会造成蛮大的性能问题。为了解决这个问题,我们来贴贴地气,在符合适用场景需要的条件下,使用简单粗暴的手段解决问题。 前言 之所以需要RCU...

December 12, 2021

重新定义“家用”路由器——500R不到捡华三商用垃圾(含方案与参考配置)

500元不到买台华三的商用机,28个千兆口,轻松拉满300M宽带,又可以起BGP起VRF,香就完事了。 注意 本文不打广告,仍然以技术为主。要是打广告博主就不会去捡垃圾了 前言 其实博主我跟MT(MikroT...

November 29, 2021

重构——让XDP为轻量SDN数据面再加速

上一篇文章我们一块来看了eBPF XDP的性能之路和场景,文中对于Ring也进行了简单的描述,但是真正当我重构起来那个包时,这么多的Ring究竟在内存中的哪个位置?哪些数据之间又是重叠的?本篇文章,我们...

November 14, 2021

解读eBPF XDP性能之路:它如何向着DPDK看齐?它在实际中又能带来多大效益?

相信使用过Linux的AF_PACKET类型socket的朋友都知道,性能不是特别好,而且似乎引入了一个新的问题——用户态程序要处理所有来的报文(可能也能绑定socket,博主我没有尝试过),这应该是...

November 7, 2021