转发虚拟网卡的ingress

建立虚拟网卡的ingress转发到ifb0(每一个Pod):

tc qdisc add dev calixxxxxxxxxxx ingress
tc filter add dev calixxxxxxxxxxx parent ffff: protocol ip prio 10 u32 match u32 0 0 flowid 1:1 action mirred egress redirect dev ifb0

建立ifb0的根队列htb(每一个Node):

tc qdisc add dev ifb0 root handle 1: htb default 0

为x号Pod建立一个类1:x(每一个Pod):

tc class add dev ifb0 parent 1: classid 1:x htb rate 100mbps

为Podx的IPx.x.x.x建立一个过滤器,使来自该Podx的流量进入子类1:x(每一个Pod):

tc filter add dev ifb0 protocol ip parent 1:0 prio 1 u32 match ip src x.x.x.x flowid 1:x

为每一个类建立一个netem队列x+1:1(每一个Pod)

tc qdisc add dev ifb0 parent 1:1 handle x+1: netem delay 100ms

转发虚拟网卡的egress

为虚拟网卡的egress建立HTB队列1:(每一个Pod)

tc qdisc add dev calixxxxxxxxxxx root handle 1: htb default 1

为HTB建立子类1:1(每一个Pod)

tc class add dev calix parent 1: classid 1:1 htb rate 100mbps

为子类建立队列(每一个Pod)

tc qdisc add dev calix parent 1:1 pfifo limit 1600

转发到IFB1(每一个Pod)

tc filter add dev calix parent 1: proto ip prio 1 u32 match u32 0 0 flowid 1:1 action mirred egress redirect dev ifb1

建立ifb1的根队列htb(每一个Node):

tc qdisc add dev ifb1 root handle 1: htb default 0

为x号Pod建立一个类1:x(每一个Pod):

tc class add dev ifb1 parent 1: classid 1:x htb rate 100mbps

为Podx的IPx.x.x.x建立一个过滤器,使来自该Podx的流量进入子类1:x(每一个Pod):

tc filter add dev ifb1 protocol ip parent 1:0 prio 1 u32 match ip src x.x.x.x flowid 1:x

为每一个类建立一个netem队列x+1:1(每一个Pod)

tc qdisc add dev ifb1 parent 1:1 handle x+1: netem delay 100ms

IFB上挂载NETEM的更多相关文章

  1. linux上挂载windows共享文件夹

    linux上挂载windows共享文件夹 1.共享windows目录 挂载之前得创建一个有password的用户(当前用户也能够),并将你要挂载的目录进行共享,并赋予读写权限 如图. watermar ...

  2. 如何在Windows上挂载Linux系统分区

    NFS普遍用于unix之间共享,windows默认是不支持这种文件系统的.如果我们要用windows访问NFS的话,而windows系统自身又不支持这种文件系统,那么我们该怎么办? 别急,小编这就手把 ...

  3. 教你用 google-drive-ocamlfuse 在 Linux 上挂载 Google Drive

    如果你在找一个方便的方式在 Linux 机器上挂载你的 Google Drive 文件夹, Jack Wallen 将教你怎么使用 google-drive-ocamlfuse 来挂载 Google ...

  4. Vue+Typescript中在Vue上挂载axios使用时报错

    Vue+Typescript中在Vue上挂载axios使用时报错 在vue项目开发过程中,为了方便在各个组件中调用axios,我们通常会在入口文件将axios挂载到vue原型身上,如下: main.t ...

  5. 在开发板Linux上挂载"驱动"挂载不成功,出现提示server 172.27.52.100 not responding, still trying

    1.在开发板具体操作步骤如下:   1.1 :设置IP ifconfig eth0 172.27.52.200   1.2 :ping通 虚拟机Linux 主机Linux ping XXX.XXX.X ...

  6. [Web][高中同学毕业分布去向网站+服务器上挂载]二、敲定思路与方向(HTML5+JS(JQuery+ECharts))

    高中同学毕业分布网站:敲定思路 一.背景 第一集:http://www.cnblogs.com/Twobox/p/8368121.html 中大体确定了自己的 大体目标.大体思路. 但是 . 在今天的 ...

  7. [Web][DreamweaverCS6][高中同学毕业分布去向网站+服务器上挂载]一、安装与破解DreamweaverCS6+基本规划

    DreamweaverCS6安装与破解 一.背景介绍:同学毕业分布图项目计划简介 哎哎哎,炸么说呢,对于Web前端设计来说,纯手撕html部分代码实在是难受. 对于想做地图这类的就“必须”用这个老工具 ...

  8. 如何在linux环境上挂载磁盘

    1.1      fdisk -l 命令 查看可用的磁盘信息(如果没有显示可用的磁盘,可重启一下主机:reboot) 1.2      df –h 命令 可查看已挂的磁盘情况 1.3      pvs ...

  9. Linux上挂载NTFS分区

    1.   简介 本文的目的是提供读者在Linux操作系统上如何mount NTFS分区的文件系统的step-by-step指南.本文包括两个部分: 以只读方式mount NTFS文件系统: 以读写方式 ...

随机推荐

  1. python 有用的库

    1.Faker pip3 install faker官网: https://faker.readthedocs.io/en/master/providers.htmlgithub: https://g ...

  2. SSD源码解读——网络搭建

    之前,对SSD的论文进行了解读,可以回顾之前的博客:https://www.cnblogs.com/dengshunge/p/11665929.html. 为了加深对SSD的理解,因此对SSD的源码进 ...

  3. Linux配置iSCSI存储

    1.基础知识 1.1 存储相关     直接存储(DAS):例如本机上的磁盘,就是属于直接存储设备.     存储区域网络(SAN):来自网络内的其他存储设备提供的磁盘.Iscsi就是属于该方式.   ...

  4. linux系统使用grep命令提取文件的基名或者路径名

    效果等于~]#dirname /etc/sysconfig/network-scripts/ifcfg-ens33 echo "/etc/sysconfig/network-scripts/ ...

  5. zencart目录结构

    zencart目录结构 文件路径 注释 index.php 主文件 includes/templates/[custom template folder]/common/html_header.php ...

  6. Euler-path

    对于每个连通块欧拉回路存在的条件 无向图:只存在两个或者零个度数为奇数的点 有向图:每个点的入度等于出度或者至多有两个点入度不等于出度且一个出度比入度多一另一个入度比出度多一 HDU 多校第二场 C. ...

  7. msvsmon.exe xp下不能运行

    远程调试   xp 下不能执行 vs2013 远程调试器 xp下不能运行 vs2010 远程调试器 xp下可以运行

  8. 微擎后台进行GET提交

    微擎form表单进行GET提交时,要传递 name 分别为 c , a , m , do 的值 例如: <form action="{php echo $this->create ...

  9. 手摸手带你实现 小游戏<别踩白块儿 -- 内有游戏链接>

    别踩白块儿 使用(白鹭引擎)Egret编写的游戏 游戏地址 准备工作 了解白鹭引擎 并安装编写工具 安装游戏引擎 安装Egret Wing3 创建项目 创建项目可以选择不同版本的引擎,创建成功之后还可 ...

  10. 关于 Vue 微信客户端 不能播放音乐(报错和不能播放的问题)

    前言 用vue 做音乐播放的时候,在本地可以打开播放,但在微信里面不能播放音乐 所以这样解决 // 音乐播放 audioPlay(){ let _this = this; var audio = _t ...