![](https://img-blog.csdnimg.cn/20201014180756930.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
DPDK
文章平均质量分 87
oshhh
这个作者很懒,什么都没留下…
展开
-
openstack-neutron的GRE、VLAN和VXLAN网络模式审核
另外一个是 qg-xxx 这样的接口,是连接到 router 服务的网络名字空间中,里面绑定一个路由器的外部IP,作为 NAT 时候的地址,另外,网络中的 floating IP 也放在这个网络名字空间中。br-tun将带有vlan tag的vm跟外部通信的流量转换到对应的gre隧道,这上面要实现主要的转换逻辑,Compute节点上发往GRE隧道的网包最终抵达Network节点上的br-tun.网络节点上的规则跟Compute节点上br-tun的规则相似,完成tunnel跟vlan之间的转换。原创 2023-03-21 16:42:10 · 398 阅读 · 0 评论 -
块设备层bdev编程简介
不同的thread 操作同一个device应该拥有不同的I/O channel,每个I/O channel在I/O路径上使用自己独立的资源就可以避免资源竞争,从而去除锁的机制。【文章福利】需要更多DPDK/SPDK学习资料加群793599096(资料包括C/C++,Linux,golang技术,内核,Nginx,ZeroMQ,MySQL,Redis,fastdfs,MongoDB,ZK,CDN,P2P,K8S,Docker,TCP/IP,协程,DPDK,大厂面试题 等)可以自行添加学习交流群。原创 2023-03-20 22:30:36 · 315 阅读 · 0 评论 -
容器的网络模式
【文章福利】需要更多DPDK/SPDK学习资料加群793599096(资料包括C/C++,Linux,golang技术,内核,Nginx,ZeroMQ,MySQL,Redis,fastdfs,MongoDB,ZK,CDN,P2P,K8S,Docker,TCP/IP,协程,DPDK,大厂面试题 等)可以自行添加学习交流群。一般网络选择none时,并不是不用网络而是使用自定义的网络模型,常见的自定义网络模型有overlay(vxlan),macvlan等,这些网络也常常以netplugin的即插件的方式出现。原创 2023-03-20 22:21:47 · 212 阅读 · 0 评论 -
dpdk uio
igb_uio 驱动会遍历该 PCI 设备的 BAR 空间,对于类型为存储器空间 IORESOURCE_MEM 的 BAR(Memory BAR),将其物理地址、大小等信息保存到 uio_info 结构的 mem 数组中;的 BAR(IO BAR),将其物理地址、大小等信息保存到 uio_info 结构的 port 数组中。而 igb 驱动同样也会遍历 BAR 空间,但是它不会记录空间的物理地址,而不是像 igb_uio 驱动似的在用户态中进行读写。驱动就可以在内核态中读写映射出来的虚拟地址,原创 2023-02-08 21:41:49 · 172 阅读 · 0 评论 -
DPDK QoS之分层调度器
分层调度器的时机主要体现在TX侧,正好在传递报文之前。它的主要目的是在每个网络节点按照服务级别协议来对不同的流量分类和对不同的用户的报文区分优先级并排序。一、概述分层调度器跟以前使用网络处理器实现的每条流或一组流的报文队列和调度的流量管理器很相似。它看起来像在传输之前的一个临时存储了很大数量报文的缓冲区(入队操作)。当网卡TX请求更多报文去发送的时候,这些报文递交给网卡TX的预定义的SLA的报文选择逻辑模块之后会删除。(出队操作)。分层调度器对大数量的报文队列做了优化。当只需要小数量的队列时,会使用消息传递原创 2023-02-08 21:32:54 · 307 阅读 · 0 评论 -
DPDK基础知识之:零拷贝技术
“直接”在这里还有另一层语义:其它所有技术中,数据至少需要在内核空间存储一份,但是在 Direct I/O 技术中,数据直接存储在用户空间中,绕过了内核。原创 2023-02-08 21:04:07 · 707 阅读 · 0 评论 -
dpdk21.11 添加igb_uio模块
meson configure build -Dprefix=/home/qxy/suricata-dpdk/dpdk-stable-21.11.1/x86_64-native-linuxapp-gcc #跟上面RTE变量同步。1.1 复制 dpdk-kmods/linux/igb_uio/ 到 dpdk-stable-21.11.1/kernel/linux/ 目录下。--- 编译添加完成 --- 收工 --- 下班。1.3 创建 igb_uio 模块的编译代码。1.4 添加IGB_UIO的编译使能。原创 2023-02-08 20:40:46 · 621 阅读 · 0 评论 -
dpdk +vfio 中断关和开
* set up to autoclear timer, and the vectors */ ---------------------------------- 只打开部分。唯一剩下的就是打开硬中断,等待数据包进来。打开硬中断的方式因硬件而异,igb 驱动是在 __igb_open 里调用辅助函数igb_irq_enable 完成的。//某一位是1表示开。ixgbe_configure_msix 操作的是IXGBE_EIAC不是 IXGBE_EIMS_EX寄存器。原创 2023-02-07 19:59:12 · 508 阅读 · 0 评论