2020年11月29日
摘要: 【前言】 关于DPDK如果实现bypass内核的原理,在上一篇《【DPDK】谈谈DPDK如何实现bypass内核的原理 其一 PCI设备与UIO驱动》中已经描述了在DPDK启动前做的准备工作,那么本篇文章将着重分析DPDK部分的职责,也就是从软件的的角度来分析在第一篇文章的基础上,如何做到真正的操作 阅读全文
posted @ 2020-11-29 20:50 Jungle1996 阅读(2852) 评论(4) 推荐(4) 编辑
  2020年3月8日
摘要: 【前言】 随着网络的高速发展,对网络的性能要求也越来越高,DPDK框架是目前的一种加速网络IO的解决方案之一,也是最为流行的一套方案。DPDK通过bypass内核协议栈与内核驱动,将驱动的工作从内核态移至用户态,并利用polling mode的线程工作模式加速网络I/O使得网络IO性能出现大幅度的增 阅读全文
posted @ 2020-03-08 01:05 Jungle1996 阅读(7654) 评论(7) 推荐(10) 编辑
  2020年3月1日
摘要: 【前言】 【本篇为原创】网络遥感,Network telemetry,为什么叫“telemetry”呢?我个人的理解是将网络中的数据进行一种“采集”,也就是实际上是一种网络数据的采集手段。由于工作需要,接触了一些网络遥感方面的技术,本篇文章就来谈一谈主流的网络遥感技术。本篇文章会介绍传统网络中基于“ 阅读全文
posted @ 2020-03-01 22:43 Jungle1996 阅读(6619) 评论(0) 推荐(6) 编辑
  2020年1月18日
摘要: 【前言】 队列是众多数据结构中最常见的一种之一。曾经有人和我说过这么一句话,叫做“程序等于数据结构+算法”。因此在设计模块、写代码时,队列常常作为一个很常见的结构出现在模块设计中。DPDK不仅是一个加速网络IO的框架,其内部还提供众多的功能组件,rte_ring就是DPDK内部提供的一种无锁队列,本 阅读全文
posted @ 2020-01-18 14:33 Jungle1996 阅读(6298) 评论(3) 推荐(3) 编辑
  2020年1月14日
摘要: 【前言】 理论上只要用到DPDK multiprocess场景的都会遇到这个问题,具体出不出问题只能说是看运气,即使不出问题也仍然是一个风险。 patch地址:https://patches.dpdk.org/patch/64819/ 讨论的patch地址:https://patches.dpdk. 阅读全文
posted @ 2020-01-14 11:25 Jungle1996 阅读(4322) 评论(0) 推荐(3) 编辑
摘要: 【前言】 使用DPDK开发的朋友应该都了解使用dpdk的fwd线程的工作模式是polling模式,即100%轮询的方式去加速网络IO,这样我们在操作系统层面上来观察目标processer会发现usage一直为100%,但是这真的是系统的真实负载么?很显然并不是,本文给出一种方法来计算dpdk的fwd 阅读全文
posted @ 2020-01-14 11:23 Jungle1996 阅读(2653) 评论(0) 推荐(2) 编辑