2024年4月14日

ovs模糊流表和精确流表

摘要: ovs流表分模糊流表(慢路径)和精确流表(快路径),精确流表数量远少于模糊流表。模糊流表在ovs网桥上,精确流表在ovs datapath上。精确流表基于模糊流表自动生成和老化。 # 查看datapath列表 ovs-dpctl dump-dps # 查看datapath基本信息 ovs-appct 阅读全文

posted @ 2024-04-14 21:50 王景迁 阅读(177) 评论(0) 推荐(0) 编辑

ubuntu根目录lvm没用满分区空间

摘要: ubuntu 23.10安装虚拟机之后,磁盘分区没有用完,根目录只占了10G。 # lvm逻辑卷使用分区100%空间 lvextend -l +100%FREE /dev/mapper/ubuntu--vg-ubuntu--lv # df -h重新计算结果 resize2fs /dev/mapper 阅读全文

posted @ 2024-04-14 20:57 王景迁 阅读(22) 评论(0) 推荐(0) 编辑

eBPF xdp和tc区别

摘要: xdp tc 层次 网卡驱动层 数据链路层 位置 进入Linux网络协议栈之前 在Linux网络协议栈中,netfilter之前 方向 只有ingress 有ingress和egress 修改 支持修改报文 支持修改报文,有skb结构,修改更方便 网卡响应关系 网卡响应在xdp之后 网卡响应在tc之 阅读全文

posted @ 2024-04-14 14:35 王景迁 阅读(69) 评论(0) 推荐(0) 编辑

Linux内核协议栈skb成员

摘要: struct __sk_buff { __u32 len; __u32 pkt_type; __u32 mark; __u32 queue_mapping; __u32 protocol; __u32 vlan_present; __u32 vlan_tci; __u32 vlan_proto; _ 阅读全文

posted @ 2024-04-14 14:10 王景迁 阅读(28) 评论(0) 推荐(0) 编辑

调试eBPF程序

摘要: 虽然eBPF内核态部分使用C语言编写,但是无法gdb,只能通过打印来调试。调用类似于C语言中printf函数的bpf_printk函数,打印结果输出到/sys/kernel/debug/tracing/trace。 bpf_printk最多带3个参数,bpf_trace_printk也是如此。 查看 阅读全文

posted @ 2024-04-14 13:54 王景迁 阅读(75) 评论(0) 推荐(0) 编辑

eBPF指定网口丢弃icmp报文

摘要: ubuntu 23.10 安装eBPF依赖 # 安装编译工具 apt install -y llvm clang # 确认内核具有BTF支持,路径存在,内核没有BTF支持,使用vmlinux.h无法通过编译 ls /sys/kernel/btf # 生成vmlinux.h # apt install 阅读全文

posted @ 2024-04-14 12:35 王景迁 阅读(48) 评论(0) 推荐(0) 编辑

导航