深入解析DPDK网络协议栈 从ARP、ICMP到TCP/UDP的完整实现与调试实战

  课程介绍

本课程深入剖析 DPDK(Data Plane Development Kit) 的网络协议栈实现,系统讲解从 ARP、ICMP 到 TCP/UDP 的全流程开发与优化调试。课程内容涵盖 协议栈架构设计、内存管理、数据包处理、并发优化 等多个关键技术领域,并结合 实际案例和源码分析,带领学员掌握高性能网络编程的核心技能。

  课程亮点:

DPDK核心技术:详解 ARP、ICMP、UDP、TCP 实现过程,包括数据包收发、checksum计算、三次握手等关键环节。

性能优化与调试:通过多队列网卡、环形缓冲区、零拷贝技术等提升网络吞吐量,掌握协议栈调试方法。

高性能组件剖析:深入解析 VPP(矢量数据包处理)、SPDK(高效磁盘IO)、DPVS(四层负载均衡) 等关键模块。

虚拟化与分布式:学习 virtio-vhost、OVS(DPDK虚拟交换机)、TRex-iperf3 等高性能网络技术。

面向实战的案例讲解:结合真实应用场景,涵盖 DDOS检测、流量调度、负载均衡、KV存储 等高阶应用。

  课程章节目录

01.dpdk网络协议栈之arpicmp的实现(10节)

02.dpdk网络协议栈之udptcp的实现(10节)

03.dpd网络协议栈之tcp的实现(10节)

04.dpdk基础组件(10节)

05.可扩展的矢量数据包处理框架VPP(cc++) 实战(8节)

06.可扩展的矢量数据包处理框架VPP(cc++) 源码(8节)

07.golang的网络开发框架 nff-go(golang)(4节)

08.高效磁盘io读写 spdk(C)(5节)

09.高效磁盘io读写 spdk(C)(4节)

10.DPDK的虚拟交换机框架 OvS(8节)

11.virtio-vhost虚拟化(10节)

12.基础组件(5节)

13.tcp并发(5节)

14.spdk文件系统实现(7节)

15.高性能4层负载均衡器 DPVS(6节)

16.TRex-iperf3-dpdk-pktgen(4节)

17.spdk kv存储的实现(8节)

资料

  课程详细目录

(1)\01.dpdk网络协议栈之arpicmp的实现(10节);目录中文件数:10个

├─1–课程学习路线与大纲内容.mp4

├─10–arp-table的实现.mp4

├─2–dpdk环境搭建与多队列网卡.mp4

├─3–dpdk网卡绑定与arp.mp4

├─4–dpdk发送过程的实现.mp4

├─5–dpdk发送过程调试.mp4

├─6–dpdk-arp实现.mp4

├─7–arp 调试流程.mp4

├─8–dpdk-icmp实现.mp4

├─9–dpdk-icmp流程调试与checksum实现.mp4

(2)\02.dpdk网络协议栈之udptcp的实现(10节);目录中文件数:10个

├─11–arp request实现.mp4

├─12–arp 调试流程.mp4

├─13–协议栈架构设计优化.mp4

├─14–udp实现之udp系统api的设计.mp4

├─15–udp实现之sbuf与rbuf的环形队列.mp4

├─16–udp实现之发送流程与并发解耦.mp4

├─17–udp实现之架构设计与调试.mp4

├─18–tcp 三次握手实现之dpdk tcp流程架构设计.mp4

├─19–tcp三次握手实现之dpdk tcp11个状态实现.mp4

├─20–tcp三次握手实现之dpdk代码调试.mp4

(3)\03.dpd网络协议栈之tcp的实现(10节);目录中文件数:10个

├─21–tcp数据传输之ack与seqnum的确认实现.mp4

├─22–tcp数据传输之ack与seqnum代码实现.mp4

├─23–tcp协议api实现之bind,listen的实现.mp4

├─24–tcp协议api实现之accept的实现.mp4

├─25–tcp协议api实现之send,recv的实现.mp4

├─26–tcp协议api实现之close的实现.mp4

├─27–tcp协议栈调试之段错误与逻辑流程.mp4

├─28–tcp协议栈调试之ringbuffer内存错误..mp4

├─29–dpdk kni的原理与kni启动.mp4

├─30–重构网络协议分发的流程.mp4

(4)\04.dpdk基础组件(10节);目录中文件数:10个

├─31–kni抓包调试tcpdump.mp4

├─32–dpdk kni mempool错误与内存泄漏.mp4

├─33–DPDK的kni内核处理流程(补).mp4

├─34–dpdk dns处理流程(1).mp4

├─35–dpdk dns处理流程(2).mp4

├─36–基于熵的ddos检测的数学理论.mp4

├─37–dpdk ddos熵计算代码实现.mp4

├─38–dpdk ddos attach检测准确度调试.mp4

├─39–ddos attack 测试工具hping3.mp4

├─40–dpdk 布谷鸟hash原理与使用.mp4

(5)\05.可扩展的矢量数据包处理框架VPP(cc++) 实战(8节);目录中文件数:8个

├─41–vpp环境部署与vpp命令讲解.mp4

├─42–vpp源码-plugin流程.mp4

├─43–flowtable的plugin的运行流程.mp4

├─44–flowtable的get flowinfo实现.mp4

├─45–flowtable的loadbalancer的框架.mp4

├─46–flowtable流程分析.mp4

├─47–vpp多网口数据接收与转发.mp4

├─48–解决plugin编译加载失败.mp4

(6)\06.可扩展的矢量数据包处理框架VPP(cc++) 源码(8节);目录中文件数:8个

├─49–vpp启动load so,注册node,函数init.mp4

├─50–vpp的运行流程 协程的实现,node的运行.mp4

├─51–vpp的结构体vlib_main.mp4

├─52–vpp结构体 vnet_main以及vpp内容总结.mp4

├─53–vcl与posix对nginx,redis性能对比.mp4

├─54–vppcom实现tcpserver以及vcl配置.mp4

├─55–vcl与posx对比,与vcl分层模型.mp4

├─56–vcl的session管理与fd.io文档.mp4

(7)\07.golang的网络开发框架 nff-go(golang)(4节);目录中文件数:4个

├─57–nff-go的技术原理分析.mp4

├─58–nff-go数据接收代码实现.mp4

├─59–nff-go收发数据与包解析显示.mp4

├─60–ipsec协议解析与strongswan的ipsec.mp4

(8)\08.高效磁盘io读写 spdk(C)(5节);目录中文件数:5个

├─61–存储框架spdk,为技术栈打开一扇存储的大门.mp4

├─62–spdk环境与vhost,NVMe分析.mp4

├─63–手把手实现spdk_server(1).mp4

├─64–手把手实现spdk_server(2).mp4

├─65–nvme与pcie以及手写nvme读写操作.mp4

(9)\09.高效磁盘io读写 spdk(C)(4节);目录中文件数:4个

├─66–bdev与blobstore的代码关系.mp4

├─67–blobstore的读写操作实现与rpc的关系.mp4

├─68–fio ioengine plugin开发与性能对比.mp4

├─69–fio ioengine模块开发与blobl操作.mp4

(10)\10.DPDK的虚拟交换机框架 OvS(8节);目录中文件数:8个

├─70–硬件虚拟化,系统虚拟化,进程虚拟化.mp4

├─71–cpu虚拟化到ntytcp的使用.mp4

├─72–ovs编译安装,ovs核心组件内容.mp4

├─73–网络命名空间与vsctl的vlan划分.mp4

├─74–ovs-vsctl的网桥,网口操作.mp4

├─75–qemu-kvm多vm管理以及对应虚拟化技术.mp4

├─76–virsh启动虚拟网卡与ovs-vsctl操作的流程.mp4

├─77–ovs-openflow与json请求.mp4

(11)\11.virtio-vhost虚拟化(10节);目录中文件数:10个

├─78–virtio与vhost的工作原理.mp4

├─79–vhost与qemu通信协议实现.mp4

├─80–vhost通信协议解析get feature.mp4

├─81–vhost与virtio通信与recvmsg的作用.mp4

├─82–virtio的前后端网卡与ifreq的作用.mp4

├─83–virtio的setmem与vring的设置.mp4

├─84–gpa,gva,hva,hpa之间的关系.mp4

├─85–ifreq的tap-tun创建.mp4

├─86–vring的物理内存与虚拟内存映射.mp4

├─87–vhost与virtio的总结.mp4

(12)\12.基础组件(5节);目录中文件数:5个

├─88–mempool与mbuf的源码分析讲解.mp4

├─89–dpdk-ringbuffer源码分析.mp4

├─90–dpdk-igb_uio源码分析.mp4

├─91–dpdk-kni源码分析.mp4

├─92–rcu的实现与互斥锁,自旋锁,读写锁.mp4

(13)\13.tcp并发(5节);目录中文件数:5个

├─93–tcp并发连接的设计.mp4

├─94–tcp并发epoll的实现.mp4

├─95–tcp并发协议栈与epoll的回调与并发测试.mp4

├─96–bpf与bpftrace系统,网络挂载实现.mp4

├─97–bpf与bpftrace应用程序ntyco的挂载监控.mp4

(14)\14.spdk文件系统实现(7节);目录中文件数:7个

├─100–文件系统四层架构设计与构建git版本管理.mp4

├─101–从blob读写到文件系统的原语操作实现.mp4

├─102–syscall的hook实现.mp4

├─103–基数树对文件系统内存管理.mp4

├─104–测试用例与调试入口函数.mp4

├─98–文件系统功能拆解与设计分析.mp4

├─99–件系统引入线程与json配置解析.mp4

(15)\15.高性能4层负载均衡器 DPVS(6节);目录中文件数:6个

├─106–dpvs的技术组件与功能实现.mp4

├─107–dpvs 与lvs+keepalived的关系.mp4

├─108–dpvs的FNat NAT SNAT模式.mp4

├─109–通过quagga配置ospf.mp4

├─110–dpvs测试用例 ipset,tc,mempool.mp4

├─111–dpvs的tc流控操作与源码实现.mp4

(16)\16.TRex-iperf3-dpdk-pktgen(4节);目录中文件数:4个

├─112–vcl与iperf3性能测试 客户端与服务器.mp4

├─113–TRex的运行原理与dpdk的关系.mp4

├─114–流编排与自动化框架.mp4

├─115–dpdk-pktgen命令讲解.mp4

(17)\17.spdk kv存储的实现(8节);目录中文件数:8个

├─116–KV存储拆解 Set, Get, Mod, Del.mp4

├─117–bdev与blob对于kv存储的选择.mp4

├─118–kv service接口 set,get,modify,delete.mp4

├─119–pagechunk的get与put.mp4

├─120–btree hashmap radixtree rbtree之间的选择.mp4

├─121–slab分配slot与释放slot.mp4

├─122–为kv存储加上conf文件.mp4

├─123–kv存储测试用例与性能测试.mp4

(18)\资料;目录中文件数:9个

├─conext14_cuckoofilter.pdf

├─Cuckoo HashingCuckoo Hashing.pdf

├─DPDK Kni与协议栈.pdf

├─DPDK高性能处理框架VPP.pdf

├─Linux内核编译与升级.pdf

├─netassist.rar

├─VMWare+ubuntu+DPDK环境搭建.pdf

├─为什么要参加技术写作计划.pdf

├─虚拟化难于理解的概念.pdf

(19)\资料\dpdk paper;目录中文件数:30个

├─An Entropy-Based DDoS Defense Mechanism.pdf

├─DDoS Attack Detection Algorithms Based on.pdf

├─Entropy based Anomaly Detection System to Prevent DDoS Attacks in Cloud.pdf

├─《(Intel DPDK) with VMware vSphere》.pdf

├─《A new model for DPDK-based virtual switches》.pdf

├─《A Simpler and Faster NIC Driver Model for Network Functions》.pdf

├─《Accretion of Suricta with DPDK for Traffic Monitoring using Optimized Detection System IDSIPS》.pdf

├─《Assessing Soft- and Hardware Bottlenecks in PC-based Packet Forwarding Systems》.pdf

├─《BMC Accelerating Memcached using Safe In-kernel Caching and Pre-stack Processing》.pdf

├─《FlowMon-DPDK Parsimonious per-flow software monitoring at line rate》.pdf

├─《Implementing and Comparing Static and Machine-Learning Scheduling Approaches using DPDK on an Integrated CPUGPU》.pdf

├─《Intel® DPDK Boosts Server Appliance Performance》.pdf

├─《Latency optimization and analysis through the use of a high-speed packet IO framework for high-bandwidth data processing》.pdf

├─《Leveraging Programmable Dataplanes for a High Performance 5G User Plane Function》.pdf

├─《Mellanox DPDK Quick Start Guide》.pdf

├─《Metronome adaptive and precise intermittent packet retrieval in DPDK》.pdf

├─《NDN-DPDK NDN Forwarding at 100 Gbps on Commodity Hardware》.pdf

├─《NetVM High Performance and Flexible Networking using Virtualization on Commodity Platforms》.pdf

├─《Network Function Virtualization Using Data Plane Developer’s Kit》.pdf

├─《Network Functions Virtualisation》.pdf

├─《Performance Contracts for Software Network Functions》.pdf

├─《Performance optimization of Snort based on DPDK and Hyperscan》.pdf

├─《Re-architecting Congestion Management in Lossless Ethernet》.pdf

├─《RedLeaf Isolation and Communication in a Safe Operating System》.pdf

├─《SoftNIC A Software NIC to Augment Hardware》.pdf

├─《StackMap Low-Latency Networking with the OS Stack and Dedicated NICs》.pdf

├─《Stateless Network Functions Breaking the Tight Coupling of State and Processing》.pdf

├─《The Path to DPDK Speeds for AF XDP》.pdf

├─《Towards including batch services in models for DPDK-based virtual switches》.pdf

├─《Virtual Switch Acceleration with OVS-TC and Agilio 40GbE SmartNICs》.pdf

(20)\资料\dpdk 企业应用;目录中文件数:7个

├─jun-liang-基于DPDK实现的LB支撑阿里巴巴双11业务——DPDKSummit2018.pdf

├─NFV实验平台的技术方案及搭建过程介绍.pdf

├─中兴通讯高性能5G核心网UPF实现.pdf

├─中国电信DPDK技术白皮书v1.0.pdf

├─打破DPDK的误区: 数据面最流行的工具包DPDK的前世,现在和未来.pdf

├─爱奇艺DPDK网络优化实践.pdf

├─面向网络功能虚拟化的高性能负载均衡机制.pdf

(21)\资料\dpdk官方文档;目录中文件数:14个

├─《DPDK Cookbook – Intel® Developer Zone》.pdf

├─《DPDK for FreeBSD入门》.pdf

├─《DPDK for Linux入门》.pdf

├─《DPDK Testpmd 应用》.pdf

├─《DPDK 中的 NIC 驱动程序》.pdf

├─《DPDK 示例应用》.pdf

├─《Fastpass:集中的“零队列”数据中心网络(英文)》.pdf

├─《Intel(R) DPDK vSwitch Getting Started Guide》.pdf

├─《发布说明:数据平面开发套件》.pdf

├─《含 XEN 的 DPDK》.pdf

├─《在英特尔® 处理器上启用卓越的 Galois-Counter 模式》.pdf

├─《多 Gbps 的流管理:经验教训(英文)》.pdf

├─《程序员指南:数据平面开发套件》.pdf

├─《采用 CUCKOOSWITCH 的可扩展、高性能以太网转发(英文)》.pdf

(22)\资料\dpdk环境;目录中文件数:2个

├─dpdk虚拟机环境下载.txt

├─VMWare+ubuntu+DPDK环境搭建.pdf

(23)\资料\MobileFile;目录中文件数:0个

(24)\资料\网络rfc;目录中文件数:3个

├─arp-rfc826.txt.pdf

├─icmp-rfc792.txt.pdf

├─rfc6928.txt.pdf

(25)\资料\课程代码;目录中文件数:14个

├─01_recv.zip

├─02_send.zip

├─03_arp.zip

├─04_icmp.zip

├─05_arptable.zip

├─06_netarch.zip

├─07_udp.zip

├─08_tcp.zip

├─09_tcp_transmission.zip

├─10_tcp_api.zip

├─11_kni.zip

├─12_ddos.zip

├─13_hash.zip

├─vpp_plugin.zip

(26)\资料\MobileFile\Image

(27)\资料\MobileFile\mpFile

(28)\资料\MobileFile\thumb

资源下载
下载价格39 猫币
VIP免费
客服QQ:765807314
0

评论0

请先

没有账号?注册  忘记密码?