
DPDK
文章平均质量分 80
Linux服务器开发
C/C++Linux后台服务器开发高级架构师内容包括C/C++,Linux,Nginx,ZeroMQ,MySQL,Redis,MongoDB,ZK,流媒体,音视频开发,Linux内核,TCP/IP,协程,DPDK多个高级知识点。
展开
-
DPDK技术学习路线总结,虚拟化专家之路
现在非常流行的DPDK技术,随着实时响应万维网的广泛使用,音频、图像、视频的使用越来越多,带动了服务质量需求的增长。为了应对这种增长,TCP/IP体系结构开发了QoS(服务质量),以支持具有各种QoS要求的各种类型的流量。数据平面是QoS框架的三个平面之一,承担着分组队列管理、队列调度、拥塞避免等机制,对提高网络通信效率起着至关重要的作用。在此基础上,人们期望以更低的成本和更短的产品开发周期提供多样化的网络单元和丰富的功能,如应用处理、控制处理、分组处理、信号处理等。原创 2022-09-05 16:15:29 · 436 阅读 · 0 评论 -
DPDK性能影响因素分析
上篇请参阅“”,本篇为下篇。介绍基于 DPDK 进行应用开发和环境配置时,应用程序性能的影响因素以及相应的优化调整方法。这些因素并非必然劣化性能,可能因硬件能力、OS 版本、各类软硬环境参数配置等的差异产生较大波动,或者存在较大的不稳定性,相关的调优方法需要用户结合自身的VNF应用部署在实践中不断完善。更多关于DPDK技术内容请参考“《中国电信DPDK技术白皮书v1.0》”。中国电信DPDK技术白皮书v1.0DPDK基础—认识DPDK技术DPDK架构高清版DPDK编程指南(中文版)原创 2022-08-24 14:54:23 · 827 阅读 · 0 评论 -
DPDK技术原理与架构
DPDK学习资料DPDK技术原理与架构。原创 2022-08-23 14:42:43 · 738 阅读 · 0 评论 -
DPDK背景和优势,赶紧学起来运用吧
一.背景1.传统的收发报文方式都必须采用硬中断来做通讯,每次硬中断大约消耗100微秒,这还不算因为终止上下文所带来的Cache Miss。2.数据必须从内核态用户态之间切换拷贝带来大量CPU消耗,全局锁竞争。3.收发包都有系统调用的开销。4.内核工作在多核上,为可全局一致,即使采用Lock Free,也避免不了锁总线、内存屏障带来的性能损耗。5.从网卡到业务进程,经过的路径太长,有些其实未必要的,例如netfilter框架,这些都带来一定的消耗,而且容易Cache Miss1、传统服原创 2022-05-12 19:33:47 · 489 阅读 · 0 评论 -
DPDK系统学习—DPDK的虚拟交换机框架 OvS
目录:多队列网卡 多队列网卡硬件实现 内核对多队列网卡的支持 多队列网卡的结构 DPDK 与多队列网卡 虚拟化 CPU 虚拟化 内存虚拟化 I/O 虚拟化 Virtio 为什么是 virtio? 多队列网卡多队列网卡硬件实现有四个硬件队列(Queue0, Queue1, Queue2, Queue3),当收到报文时,通过 hash 包头的(sip, sport, dip, dport)四元组,将一条流总是收到相同原创 2022-05-07 16:09:36 · 753 阅读 · 0 评论 -
腾讯阿里工程师所热衷的DPDK到底是个什么东西?该如何学习?
dpdk是什么?可能很多人只是听过,有的可能听都没有听过。但是目前确实很多的互联网大小厂都在使用这样一门技术,从招聘网站上看,对应的岗位也很多,薪资不菲:比如OVS,VPP等技术,很多云厂家都在用,提供云主机,组件,数据库等等,它对比于原生,能够大幅提升IPV4的转发性能,可以让用户在迁移包处理应用时,获得更好的成本和性能优势。所以,随着技术的发展,dpdk会越来越受到重视,将广泛应用到各类分布式系统中。还不熟悉的朋友,这里可以先领取一份dpdk新手学习资料包(入坑不亏):...原创 2022-04-13 20:59:10 · 525 阅读 · 0 评论 -
DPDK技术系统学习一(接收,发送,arp,icmp功能测试)
如何技术不去手动做练习实践,就总有一种无从下手的感觉文末附上小编总结的DPDK学习路线图以及我的学习资料。0:准备环境并启动,使用dpdk接管其中一个网卡。ubuntu虚拟机环境配置多队列网卡,安装dpdk。在环境已经配置ok的前提下,每次重启环境后需要重新配置环境变量,并且绑定网卡。export RTE_SDK=/home/hlp/dpdk/dpdk-stable-19.08.2export RTE_TARGET=x86_64-native-linux-gccifconfig原创 2022-04-13 15:13:24 · 1908 阅读 · 1 评论 -
DPDK uio 分析 丨DPDK的优势及学习总结
通常这些非标准设备的驱动被实现为字符驱动。这些驱动使用了很多内核内部函数和宏。而这些内部函数和宏是变化的。这样驱动的编写者必须编写一个完全的内核驱动,而且一直维护这些代码。而且这些驱动进不了主内核源码。于是就出现了用户空间I/O框架(Userspace I/O framework)。UIO 怎样实现一个设备驱动的基本任务一个设备驱动的主要任务有两个: 1. 存取设备的内存 2. 处理设备产生的中断 对于第一个任务,UIO 核心实现了mmap()可以处理物理内存(physical mem原创 2022-03-08 15:37:01 · 1079 阅读 · 0 评论 -
DPDK分析学习之全网唯一的DPDK教学课程丨虚拟化高性能专家之路
1、前言 当时第一次听说”数据面“这个概念,感觉挺新鲜的。误打误撞就开始搞了,刚开始接触的时候,由于不懂其中的原理,觉得很神奇,因为报文的转发是在应用层,通过一个进程进行转发。而传统的报文转发是基于内核的,要想控制报文,需要写驱动程序。后面接触了一段时间,发现原来报文转发是基于intel开源的DPDK开发的,分为控制面和数据面。这就是当前比较火热的软件定义网路SDN的一种应用场景。DPDK应用程序是运行在用户空间上利用自身提供的数据平面库来收发数据包,绕过了Linux内核协议栈对数据包处理过程。Linu原创 2021-09-24 16:43:06 · 453 阅读 · 0 评论 -
什么是DPDK?DPDK的原理及学习学习路线总结
一、什么是DPDK 对于用户来说,它可能是一个性能出色的包数据处 理加速软件库;对于开发者来说,它可能是一个实践包处理新想法的创 新工场;对于性能调优者来说,它可能又是一个绝佳的成果分享平台。 DPDK用软件的方式在通用多核处理器上演绎着数据包处理的新篇 章,而对于数据包处理,多核处理器显然不是唯一的平台。支撑包处理 的主流硬件平台大致可分为三个方向。 ·硬件加速器 ·网络处理器 ·多核处理器 在类似 IA(Intel Architecture)多核处理器为目标的平台上,网络原创 2021-08-09 15:45:22 · 4972 阅读 · 0 评论 -
越来越多的岗位需要DPDK,那从DPDK该如何提升网络底层效率丨网络原理丨Linux服务器开发丨后端开发丨网络底层原理
越来越多的岗位需要dpdk,那从dpdk该如何提升网络底层效率1. dpdk线程模型2. kni与数据接收处理流程3. 手把手代码实现视频讲解如下,点击观看:越来越多的岗位需要DPDK,那从DPDK该如何提升网络底层效率丨网络原理丨Linux服务器开发丨后端开发丨网络底层原理丨网络性能丨kni丨C/C++C/C++Linux服务器开发精彩内容包括:C/C++,Linux,Nginx,ZeroMQ,MySQL,Redis,MongoDB,ZK,流媒体,P2P,音视频开发,Linux内核,D原创 2021-04-22 12:02:27 · 226 阅读 · 0 评论 -
服务器千万级并发很难,且看看DPDK为我们解决了哪些核心问题?丨网络性能丨底层原理丨后端开发丨Linux服务器开发
千万级并发的难点有哪些?dpdk为我们解决了哪些核心问题?1.5个维度描述千万级并发2.dpdk的作用3.dpdk项目实战视频讲解如下,点击观看:千万级并发很难,且看看DPDK为我们解决了哪些核心问题?丨网络性能丨底层原理丨Linux服务器开发丨后端开发丨动态DNSC/C++Linux服务器开发精彩内容包括:C/C++,Linux,Nginx,ZeroMQ,MySQL,Redis,MongoDB,ZK,流媒体,P2P,音视频开发,Linux内核,Docker,TCP/IP,协...原创 2021-04-08 15:40:41 · 295 阅读 · 0 评论 -
手写网络协议栈-协议封装,netmap,dpdk网卡数据抓取,柔性数组
今夜只有一个话题,手写网络协议栈,保证大家都能学会1.协议头的封装2.netmap/dpdk的原理3.柔性数组的使用视频讲解如下,点击观看:手写网络协议栈-协议封装,netmap,dpdk网卡数据抓取,柔性数组C/C++Linux服务器开发精彩内容包括:C/C++,Linux,Nginx,ZeroMQ,MySQL,Redis,MongoDB,ZK,流媒体,P2P,音视频开发,Linux内核,Docker,TCP/IP,协程,DPDK多个高级知识点分享。点击链接订阅后直接...原创 2021-03-18 16:12:37 · 379 阅读 · 1 评论 -
DPDK的基本原理、学习路线总结
一、DPDK原理网络设备(路由器、交换机、媒体网关、SBC、PS网关等)需要在瞬间进行大量的报文收发,因此在传统的网络设备上,往往能够看到专门的NP(Network Process)处理器,有的用FPGA,有的用ASIC。这些专用器件通过内置的硬件电路(或通过编程形成的硬件电路)高效转发报文,只有需要对报文进行深度处理的时候才需要CPU干涉。但在公有云、NFV等应用场景下,基础设施以CPU为运算核心,往往不具备专用的NP处理器,操作系统也以通用Linux为主,网络数据包的收发处理路径如下图所示:原创 2021-01-28 15:40:17 · 3870 阅读 · 6 评论 -
高性能库DPDK精简理解
一、 前言才开始接触到DPDK,发现概念很多,很难以下了解,在这文章中记录下关键的内容,做到对dpdk的基本东西真正了解了。 这样后面用它来写程序才可能顺利,不能赶进度啊,越赶进度反而可能越慢,慢慢来比较快。 本文主要是自己理解,参考很多文章,有哪里不理解的就查,做不到精深,只了解含义。 文章算是汇编,参考多篇文章,如有侵权,请告知,谢谢!二、 整体理解历史: 随着计算机核数的增加,网络带宽的增加,对主机进行网络包的处理性能要求越来越高,但是现在的操作系统对网络包处理的方式很低效。 ...原创 2020-11-09 16:20:00 · 917 阅读 · 0 评论