将晦涩难懂的技术讲的通俗易懂
发布时间:2018-07-01 12:01:11
dpdk 17.11 支持iova——lvyilong316bus概念的支持在dpdk 16.11是没有bud这一层抽象的,直接通过rte_eal_initàrte_eal_pci_init调用pci设备的初始化。也就是dpdk 16.11只支持pci这一种总线设备。但是到了dpdk17.11引入了bus的概念。在rte_eal_inità rte_bus_scan 进行bus的初始化。l rte_bus.........【阅读全文】
发布时间:2018-07-01 11:56:34
dpdk 1711新特性之vhost iotlb——lvyilong316iotlb简介说的iotlb就不得不先说IOMMU。大家知道,I/O设备可以直接存取内存,称为DMA(Direct Memory Access);DMA要存取的内存地址称为DMA地址(也可称为BUSaddress)。在DMA技术刚出现的时候,DMA地址都是物理内存地址,简单直接,但缺点是不灵活,比如要求物.........【阅读全文】
发布时间:2018-06-03 20:19:08
基于dpdk的用户态协议栈f-stack实现分析——lvyilong316f-stack是腾讯基于dpdk开发的一套用户态协议栈,目前已经开源,相关介绍可以看这里:https://cloud.tencent.com/developer/article/1005179。 开源代码在这里:https://github.com/F-Stack/f-stack.git 。项目背景F-Stack 这个项目起始于DNSPod的授.........【阅读全文】
发布时间:2018-05-13 22:28:55
dpdk网卡收发包分析——lvyilong316 在前面我们分析过dpdk程序启动过程中的对网卡设备初始化已经绑定驱动的逻辑。但是仅仅这样程序还不能正常的收发数据包,因为程序启动通过rte_eal_init初始化的仅仅是设备的基本结构,和网卡设备转发相关的配置以及队列的初始化,是由应用程序自身调用相应.........【阅读全文】
zf8292024-11-13 13:41
zf829:您好,请教大神一个问题,设备直通给VM时,中断到底会不会导致VM_EXIT吗,如果会,那VIRTIO直通时还会导致IO性能下降吧?“当透传设备产生中断时,vfio_msihandler ISR执行,该函数不做实际的服务程序处理,仅仅通过eventfd_signal激活irqfd_inject,然后最终调用deliver_posted_interrupt向虚机注入中断,中断号即为虚机配置透传设备时的中断号。” 这段描述在代码上我也仔细看了,逻辑肯定是对的,但另一方面我还是不确定中断到底会不会导致VM_EXIT
这里的中断主要是指数据包收发的中断
回复 | 举报lemon222024-10-09 22:34
你好,有个关于实现方面的问题:当协议栈收到来自app的数据(如ping)时,会发给tun设备,然后又被发送给vpn程序,程序对其进行加密或者一些处理之后,要发送出去,这里是通过什么方式发送出去的呢?我看你关于itun/tap的文章中写的是通过socket发送给协议栈,然后自动给物理网卡后发送出去,实现来说,就是直接用socket与下一跳建立连接,然后代码用socket发送吗?那这样是不是不会再次经过TUN设备了?因为我看好像有的原理写的是再次写入到tun设备,然后tun设备给协议栈,最后再发送。
这里有点不太清楚如何具体的实现发送的
lvyilong3162023-06-06 15:06
zhangtongjian12:你好,请教下,“qemu和vhost-user前后端协商过程”中讲到的初始化多队列时,多队列初始化时,对应的kvm中断机制中irqfd和ioeventfd是和队列数目对应的吗?还是一个虚拟机就一个irqfd和ioeventfd?
和队列对应
回复 | 举报zhangtongjian122023-06-02 10:29
你好,请教下,“qemu和vhost-user前后端协商过程”中讲到的初始化多队列时,多队列初始化时,对应的kvm中断机制中irqfd和ioeventfd是和队列数目对应的吗?还是一个虚拟机就一个irqfd和ioeventfd?