- 博客(68)
- 资源 (30)
- 收藏
- 关注
原创 内核pktgen使用
pktgen 是一款 Linux 发包工具,可在内核高速发包。由于pktgen是内核内置的,使用内核空间,所以它可以达到高带宽、高发包速率,以此更好地测试路由器、交换机和其他网络设备。
2023-10-24 09:33:40
1976
1
原创 网络链路聚合
链路聚合是一种网络技术,它将多个物理链路(如以太网、无线电连接或其他类型的连接)捆绑在一起形成一个逻辑链路,从而增加网络带宽和容错性。
2023-06-29 19:47:27
3162
原创 virtio-net收包流程
函数把数据拷贝到虚拟机的 virtio 网卡接收队列,然后向虚拟机注入一个中断,虚拟机便感知到有网络数据报文。NAPI 是一种用于网络设备驱动的软件架构,其目的是减少网络中断对系统性能的影响。函数负责将报文拷贝到 buffer 中,实现向 Guest OS 物理地址写入数据。用于将 NAPI 设备的 napi 结构体加入到系统中轮询执行的链表中。函数用于将从网络中接收的数据填充到接收队列的输入缓冲区中。进行合并处理,根据处理的结果,决定。函数用于填充虚拟队列的元素。接收数据包回调函数。
2023-05-01 15:16:36
2510
原创 Soft-RoCE部署及通信测试
Soft-RoCE是一种基于软件的RoCE(RDMA over Converged Ethernet)实现。
2023-05-01 11:24:24
5159
4
原创 qperf测试
qperf 可以用来测试两个节点之间的带宽(bandwidth)和延迟(latency),不仅仅可以用来测试 TCP/IP 协议的性能指标,还可以用来测试 RDMA 传输的指标。
2023-05-01 11:15:12
1775
原创 perftest测试
Perftest 是一组基于uverbs编写的测试程序,是RDMA性能相关的micro-benchmark。可用于软硬件调优以及功能测试。
2023-05-01 11:12:18
2454
原创 Iperf网络测试工具
Iperf是一款基于TCP/IP和UDP/IP的网络性能测试工具,可以用来测量网络带宽和网络质量,提供网络延迟抖动、数据包丢失率、最大传输单元等统计信息。
2023-05-01 10:43:43
2411
原创 无损以太网与网络拥塞管理(PFC、ECN)
无损以太网(Lossless Ethernet)是一种专门用于数据中心网络的网络技术,旨在提供低延迟、高吞吐量和可靠性的传输服务。网络拥塞管理 是指在网络通信中,通过一系列机制来控制网络拥塞的发生和影响,以保证网络的稳定性和服务质量
2023-05-01 10:24:33
15087
原创 内核常用PCI相关配置结构体、函数&PCI设备驱动
用于存放本驱动所支持的所有PCI设备。通常使用PCI_DEVICE宏来完成前两个参数vendordevice的填充。当对结构体数组填充完毕后需要调用宏导出到用户空间,使热插拔或模块装载系统知道什么模块针对什么硬件设备。
2023-03-28 18:51:49
2403
3
原创 PCIe基础
PCI Express,简称PCI-E,官方简称PCIe,是计算机总线的一个重要分支,它沿用既有的PCI编程概念及信号标准,并且构建了更加高速的串行通信系统标准。目前这一标准由PCI-SIG组织制定和维护。
2023-03-28 18:47:04
1348
原创 qemu virtio设备模拟与初始化流程
virtio则是属于一种半虚拟化解决方案,它是一种前后端架构,虚拟机内部需要安装特定的virtio设备驱动作为前端,模拟的设备作为后端,后端可以放在用户空间模拟,也可以放在内核空间模拟。放在内核空间模拟就是vhost的实现,如DPDK,SPDK等。
2023-01-03 19:45:36
3024
原创 Ubuntu20.04部署KVM并安装Ubuntu Server 20.04
KVM是Linux开源社区大力支持的虚拟化技术,基于Intel和AMD的硬件虚拟化技术。KVM(Kernel-bashdVirtual Machine,即基于内核的虚拟机),它是用于Linux内核中的虚拟化环境设施,是Linux内核中的一个功能模块,在Linux内核中默认被安装,可以将Linux内核转化为一个 Hypervisor。
2022-12-27 11:33:47
3877
2
原创 virtio前端驱动通知机制分析
virtio 前后端主要通过PCI配置空间的寄存器来完成通信,I/O 请求的数据地址存放于 vring 中,并通过共享vring这个区域来实现 I/O 请求数据的共享。
2022-12-26 13:35:31
1624
原创 virtio虚拟化框架
系统虚拟化技术是云计算最重要的核心技术之一。云计算平台的资源池化,资源统一管理以及后续的动态分配都是基于系统虚拟化技术才得以实现的。在计算机系统中,主要有计算资源,存储资源和网络资源。所以,系统虚拟化技术又可以细分为计算虚拟化,存储虚拟化和网络虚拟化。其中存储设备和网络设备一般都是以外设的形式和CPU通过I/O总线连接起来的,所以存储虚拟化和网络虚拟化又可以统一归类为I/O虚拟化技术。
2022-12-26 11:24:06
1865
原创 virtio vring原理
在 virtio 设备上进行批量数据传输的机制被称为 virtqueue 。每个设备可以拥有零个或多个 virtqueue ,当 Driver 想要向设备发送数据时,它会填充 Descriptor Table 中的一项(或将几项链接在一起),并将描述符索引写入 Available Ring 中,然后它通知 Device ,当 Device 完成后,它将描述符索引写入 Used Ring 中并发送中断。Virtio 在 Guest 中实现了前端驱动,在 Host (qemu)中实现了后端驱动,前后端之间通
2022-12-25 19:38:57
3470
原创 virtio-net发包流程分析
virtio-net发包流程大致为:虚拟机中的进程发送网络包时,仍然通过文件系统和socket调用网络协议栈到达网络设备层。此时的网络设备为virtio虚拟网络设备,virtio-net前端驱动作为网卡设备驱动层,接收IP层传输下来的二层网络数据包,最终调用start_xmit函数完成内核的前端发包流程,后端收到数据后在根据具体的操作将数据通过实体网卡发送出去。
2022-12-25 19:15:50
2482
原创 RDMA测试集:preftest安装与使用
perftest是一组基于uverbs编写的测试程序,是RDMA性能相关的benchmark。可用于软硬件调优以及功能测试。
2022-12-06 11:21:56
9169
原创 Linux设备驱动的并发控制(中断屏蔽、原子操作、自旋锁、信号量)
并发指的是多“用户”单元访问同一片共享资源(硬件资源和软件资源的全局变量、静态变量、共享存储区等),并不一定指的是时间上的并发执行。竞态指的是多个执行路径可能对同一资源进行操作时可能导致的资源数据紊乱的行为。竞态一般需要两个条件:[1] 存在共享资源、[2] 对共享资源存在竞争访问关系。...
2022-07-08 14:36:50
1046
1
原创 Linux platform总线驱动基础知识
在Linux2.6版本以后的设备驱动编写时,一般需关心三部分内容,即 总线(bus)、设备(device) 和 驱动(driver) 三个实体。总线是设备和驱动之间的桥梁,Linux通过总线将设备与驱动两部分绑定起来。当向系统注册一个驱动时,总线会寻找与之匹配的设备,如果有的话会将两者联系起来;相反的,当向系统注册一个设备时,总线会在驱动中查找有没有与之匹配的设备,如果有的话也将两者联系起来。...
2022-07-01 10:03:44
705
原创 Linux字符设备驱动基础知识
在Linux设备驱动中,字符设备驱动较为基础,字符设备即一个一个的字节,按照字节流进行读写操作的设备,读写数据具有一定的先后顺序,例如I2C、SPI、LCD等都属于字符设备。
2022-06-23 10:24:25
629
原创 Linux设备树(Device Tree)
在Linux3.x版本下,Linux内核中ARM架构的板级信息大量放置在 arch/arm/mach-xxx 和 arch/arm/plat-xxx 文件夹下,例如platform设备、resource、spi_board_info以及各种硬件的platform_data,这些信息对Linux内核来说无关紧要,会造成大量的冗余编码,导致ARM的merge工作量较大。当采用设备树(device tree)之后,许多硬件的细节可以直接透过设备树传递给Linux内核,大大减少了Linux内核的冗余代码量。....
2022-06-16 11:45:07
4317
原创 ARM 异常(Exception)
ARM异常(Exception)什么是异常? 异常 是处理器核在顺序执行程序指令流的过程中突然遇到了异常的事情,这些事件包括硬件错误、指令执行错误、用户程序请求服务、内存访问异常、取指令异常等,几乎每种处理器都支持特定的异常处理,中断也是异常的一种。
2022-03-28 20:03:58
4051
处理器外围内存压力测试工具源码
2022-04-01
VS Code_reg.zip
2021-11-07
OpenGL配置包.tar
2021-04-05
OpenGL环境配置库
2020-12-13
蓝桥杯单片机第四届决赛_超声波测距报警实时时钟电路.zip
2019-06-08
蓝桥杯单片机第五届初赛-简易温度采集与控制装置.zip
2019-06-08
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人