手搓一台简单的网络损伤仪——弱网测试

1、介绍

  • 支持对链路带宽、传输时延、丢包率和无码率的手动设置;

1.1、网络损伤仪在使用时,网络拓扑连接

在这里插入图片描述

1.2、网络损伤仪管理页面展示

在这里插入图片描述

2、使用的设备及相关技术栈

  • 一台Intel 赛扬 J1900的迷你主机【拥有4个千兆网口】;
  • ubuntu-18.04.5-live-server-amd6操作系统;
  • OpenvSwitch【配置网桥和设置带宽】;
  • tc命令【设置网卡的传输时延、丢包率和无码率】;
  • Python3.6+Flask+Vue【编写终端管理页面】。

3.1、OpenvSwitch安装步骤及使用到的相关命令

  • 安装参考链接;

  • 新建br0网桥,让4个网口可以进行数据的透传:

    # 新建br0网桥
    ovs-vsctl add-br br0
    # 将4个物理网卡挂在到br0网桥下:
    ovs-vsctl add-port br0 enp1s0
    ovs-vsctl add-port br0 enp2s0
    ovs-vsctl add-port br0 enp3s0
    ovs-vsctl add-port br0 enp4s0
    
  • 通过ovs-vsctl设置指定网卡的带宽:

    # 将enp1s0网卡的带宽设置为1Mbps【ingress_policing_rate参数单位为Kbps】
    ovs-vsctl set interface enp1s0 ingress_policing_rate=1000
    # 清除enp1s0网卡的相关设置
    tc qdisc del dev enp1s0  root
    

3.2 tc的相关命令

  • 设置指定网卡的时间延迟、丢包率和误码率:
    # 将enp1s0网卡的时间延迟设置为5ms、丢包率设置为百分之一、误码率设置为百分之二
    tc qdisc replace dev enp1s0 root netem delay 5ms loss 1% corrupt 2%
    # 清除enp1s0网卡的相关设置
    tc qdisc del dev enp1s0 root
    

3、遇到的相关问题及解决方案

问题1:主机在开机后,再插入网线,无法自动激活网口。

解决方式:

通过配置 00-installer-config.yaml 网络配置文件,设置网口开启自启,并支持插入网线后自动激活:

network:
  ethernets:
          enp1s0:
                  dhcp4: yes
                  optional: true
          enp2s0:
                  dhcp4: yes
                  optional: true
          enp3s0:
                  dhcp4: yes
                  optional: true
          enp4s0:
                  dhcp4: yes
                  optional: true

          br0:
                  addresses: [192.168.3.88/24]
                  gateway4: 192.168.3.1
                  nameservers:
                          addresses: [114.114.114.114]
  version: 2


PS:此处,将br0的网桥IP设置为192.168.3.88,需要调整链路参数时候,用网线连接PC及迷你主机的任一网口,即可使用浏览器访问http://192.168.3.88/进行参数设置。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/37971.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

【机器学习】了解 AUC - ROC 曲线

一、说明 在机器学习中,性能测量是一项基本任务。因此,当涉及到分类问题时,我们可以依靠AUC - ROC曲线。当我们需要检查或可视化多类分类问题的性能时,我们使用AUC(曲线下面积)ROC(接收器工作特…

Coggle 30 Days of ML(23年7月)任务六:训练FastText、Word2Vec词向量

Coggle 30 Days of ML(23年7月)任务六:训练FastText、Word2Vec词向量 任务六:学会训练FastText、Word2Vec词向量 说明:在这个任务中,你将学习如何训练FastText和Word2Vec词向量模型,这些词向量…

Linux地盘上AMD处理器称王了

近日资讯,尽管从全局来看,Linux系统份额远不及Windows,但在程序员、开发者、硬核玩家圈子,Linux则备受推崇。 来自Steam的最新数据显示,在Linux游戏用户中,AMD处理器的份额占据绝对优势,达到了…

ts学习(一):基础篇1

旨在记录! 这篇人都学废了,本想记录常用类型,越学越多,每一个都很重要… 一、string: 字符串类型二、number: 数字类型三、boolean: 布尔值四、array:数组五、tuple: 元组六、字面量七、object:对象八、any: 任意类型九、unknown:…

Spring MVC文件上传

Spring MVC文件上传 Spring MVC 框架的文件上传基于 commons-fileupload 组件,并在该组件上做了进一步的封装,简化了文件上传的代码实现,取消了不同上传组件上的编程差异。 1. MultipartResolver接口 在 Spring MVC 中实现文件上传十分容易…

云和DevOps如何帮助加速数字化转型?

1.云和 DevOps:概述 数字化转型已成为寻求在现代时代蓬勃发展的企业的一项关键举措。为了加速这一转型,组织正在利用云计算的力量并采用DevOps实践。云计算提供可扩展且灵活的基础架构,而 DevOps 则支持协作和持续交付的文化。本文将探讨云和…

MySQL:数据的增删改查

数据的增删改查 前言一、插入数据1、实际问题2、方式1:VALUES的方式添加3、方式2:将查询结果插入到表中 二、删除数据三、更新数据四、查询数据五、MySQL8新特性:计算列 前言 本博主将用CSDN记录软件开发求学之路上亲身所得与所学的心得与知…

PyTorch中的torch.nn.Linear函数解析

torch.nn是包含了构筑神经网络结构基本元素的包,在这个包中,可以找到任意的神经网络层。这些神经网络层都是nn.Module这个大类的子类。torch.nn.Linear就是神经网络中的线性层,可以实现形如yXweight^Tb的加和功能。 nn.Linear():…

数据库的分片策略

数据库的分片策略 1、范围分片2、hash 取模分片3、一致性hash 分片 1.分片策略 数据库的分片策略是指将数据库中的数据按照一定的规则和方式进行分割(分片)存储在不同的物理节点或服务器上的策略。分片策略旨在实现水平扩展,提高数据库的性…

前端下载PDF内容空白且大小偏大问题解决

前端使用React框架axios请求后端接口下载文件,请求返回正常但文件大小和内容异常。经排查,其原因是使用了mockjs用作数据模拟,导致了请求异常,将其注释掉后,文件大小与内容恢复正常。 目录 1.文件异常 2.定位问题 3…

【VirtualBox】安装 VirtualBox 提示 needsthe Microsoft Visual C++ 2019

概述 一个好的文章能够帮助开发者完成更便捷、更快速的开发。书山有路勤为径,学海无涯苦作舟。我是秋知叶i、期望每一个阅读了我的文章的开发者都能够有所成长。 一、开发环境 开发环境:windows10虚拟机:VirtualBox 7.0.8 二、报错 ubun…

汽车销售数据可视化分析实战

1、任务 市场需求:各年度汽车总销量及环比,各车类、级别车辆销量及环比 消费能力/价位认知:车辆销售规模及环比、不同价位车销量及环比 企业/品牌竞争:各车系、厂商、品牌车销量及环比,市占率及变化趋势 热销车型&…

ChatGPT与Claude对比分析

一 简介 1、ChatGPT: 访问地址:https://chat.openai.com/ 由OpenAI研发,2022年11月发布。基于 transformer 结构的大规模语言模型,包含1750亿参数。训练数据集主要是网页文本,聚焦于流畅的对话交互。对话风格友好,回复通顺灵活,富有创造性。存在一定的安全性问题,可…

亚马逊云科技,加速生成式AI的落地

编辑:阿冒 设计:沐由 “展望今天的世界,在机遇之外,更多事后我们看到的是前所未有的巨大挑战。事实证明,惟有通过创新、专注创新,方能挖掘和发现更多的增长机会。” 在2023亚马逊云科技中国峰会的第二天&am…

OpenCV(图像处理)-图片搜索

图片搜索 1.知识介绍2.实现流程2.1 计算特征点与描述子2.2 描述子的匹配2.3 求出单应性矩阵并画出轮廓2.4 将特征点标出 此篇博客作者仍在探索阶段,还有一些模糊的概念没有弄懂,请读者自行分辨。 1.知识介绍 Opencv进行图片搜索需要的知识有&#xff1…

MWeb Pro for Mac(苹果电脑最好用的Markdown编辑器)安装教程

MWeb Pro是一款专业的Mac平台上的Markdown编辑器,可以帮助用户更加高效地书写和排版文本内容,支持多种文本格式的导入和导出,如HTML、RTF、PDF等,还支持实时预览和代码高亮等功能,为用户提供了非常优秀的Markdown编辑体…

Linux与Windows:操作系统的比较与技巧分享

🌷🍁 博主 libin9iOak带您 Go to New World.✨🍁 🦄 个人主页——libin9iOak的博客🎐 🐳 《面试题大全》 文章图文并茂🦕生动形象🦖简单易学!欢迎大家来踩踩~&#x1f33…

校园跑腿小程序都包括哪些业务呢?

校园创业,大家都知道,一直以来是个非常火热的话题,每位步入大学校园的学子们都有过在校创业的想法,包括我们一些有着学校资源的社会创业者们,早已经看好了中国高校这块巨大的市场。 在这里,我要跟大家分享…

遥感云大数据在灾害、水体与湿地领域典型案例实践及GPT模型应用

近年来遥感技术得到了突飞猛进的发展,航天、航空、临近空间等多遥感平台不断增加,数据的空间、时间、光谱分辨率不断提高,数据量猛增,遥感数据已经越来越具有大数据特征。遥感大数据的出现为相关研究提供了前所未有的机遇&#xf…

用Python画一面五星红旗

🍁博主简介: 🏅云计算领域优质创作者 🏅2022年CSDN新星计划python赛道第一名 🏅2022年CSDN原力计划优质作者 🏅阿里云ACE认证高级工程师 🏅阿里云开发者社区专…