如何度量网络质量

news2024/11/30 12:14:48

前面提到一种用 sigmoid 函数度量网络的方法(参见 网络传输质量评价体系),旨在将所有度量归于 0 到 1 区间,度量百分位或凸显不凸显取代度量绝对值,但苦于调参。后转为应用数据积累分布曲线替换 sigmoid 曲线,解决了调参问题,因为曲线本身就内含了原始数据的概率分布,参数内化于曲线,而曲线本身已经调制好了,这是一个好方法。

这种方法的核心是用百分等级替代绝对值,取消了单位量纲换算,如此便可直接运算组合。度量的目标是展示指标高了还是低了,多个指标组合显示事件发生了还是没发生。合理或巧妙运用中心极限定理,非常容易对指标意味着什么进行判定。

举一个例子,历史 rtt 均值(算术的 or 移指的)为 D,最近的抽样均值为 D + r,根据 r 在历史均值分布的偏移很容易获得百分位信息,历史均值抽样分布根据中心极限定理是正态分布,而正态分布非常容易处理。

用这种方法重构 PCC 算法的打分函数也是可以的,毕竟 sender 只想知道 “变好” 或 “变坏”,这是个相对量,用积累分布函数和中心极限定理再合适不过,这就省去了原始打分函数 U 的 sigmoid 校准,在一个公式里统一处理 rtt,丢包率,吞吐是非常困难的,苦于调参和论证。

这种方法早已在教育和绩效考核领域被广泛应用,比如学生成绩,都归一化到优良中差四个分位,361 绩效考核也是按百分位定级,比处理连续的绝对值处理高效很多,非常便于直接相加映射到指数,省去了复杂的加权运算。

我用 “度量网络质量” 做题目只因为我对此比较熟,并不意味着这种方法只能度量网络质量,该领域外一个合理的例子是度量主机网络栈的健康性。

为 TCP 未决 Request 数量建立一个计数器 counter1,为 SYN-ACK 建立一个计数器 counter2,Accept 处理创建 counter3,统计其均值分布即可分辨是遭遇 DDoS 还是主机性能不够,诸如此类。

这方法普遍适用于任何统计复用系统,不管哪种具体场景,度量的意义在于为优化提供数据支撑,从而脱离了凭空优化,但遗憾的是,即使大多数优化点不是凭空的,但针对优化解决的问题多数也是捏造的,自己幻想一个问题场景,然后解决该问题。幻想的问题专为后续优化做铺垫,而在实际环境中,该问题引发的统计劣化占比远未达到需要解决的地步,换句话说,它不影响 Pxx,xx 是系统被关注的统计百分位阈值。

优化系统,统计先行。

可惜当前的普遍认知(源自于教育)侧重对确定性系统屎上雕花,而忽略了系统的统计性,博弈均衡等更核心的特征,普遍陷入寻找局部最优解的泥潭,这显然与全局最优相悖,全局最优意味着不可能照顾所有的局部,而对于局部而言 “差不多足够好” 就是 “最好”。

基于统计的 p99 仍阻止不了工人们纠结 “这个数据包为什么重传”,统计律告诉我们,如果异常占比不到一定阈值,就可以忽略它们,在一个统计复用系统内,没有任何事件是确定的。

显然,我的度量方法可以帮系统找到 “足够好” 的 “最好的” 解,但在局部,它肯定不是 “最优”。

读《有趣的统计》(Bruce Frey 著)第三章有感,结合我此前的网络传输质量评价体系中用积累分布函数替换 sigmoid 函数所基于的统计方法,写一篇随笔。

浙江温州皮鞋湿,下雨进水不会胖。

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

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

RocketMQ rocketmq-tools管理主题

RocketMQ rocketmq-tools管理主题 环境和软件版本增删改查 环境和软件版本 Win10、IDEA、Jdk1.8、rocketmq 5.1.3、rocketmq-tools 5.1.3 引入依赖 <dependency><groupId>org.apache.rocketmq</groupId><artifactId>rocketmq-tools</artifactId&g…

《datawhale2411组队学习 模型压缩技术7:NNI剪枝》

文章目录 一、NNI简介二、 NNI剪枝快速入门2.1 加载并训练模型2.2 模型剪枝2.3 模型加速&#xff08;剪枝永久化&#xff09;2.4 微调压缩模型2.5 Slim Pruner测试 三、 使用NNI3.0进行Bert压缩&#xff08;剪枝、蒸馏)3.1 数据预处理3.2 训练模型3.3 设置模型蒸馏函数3.4 修剪…

C#学写了一个程序记录日志的方法(Log类)

1.错误和警告信息单独生产文本进行记录&#xff1b; 2.日志到一定内存阈值可以打包压缩&#xff0c;单独存储起来&#xff0c;修改字段MaxLogFileSizeForCompress的值即可&#xff1b; 3.Log类调用举例&#xff1a;Log.Txt(JB.信息,“日志记录内容”,"通道1"); usi…

Java设计模式——职责链模式:解锁高效灵活的请求处理之道

嘿&#xff0c;各位 Java 编程大神和爱好者们&#xff01;今天咱们要一同深入探索一种超厉害的设计模式——职责链模式。它就像一条神奇的“处理链”&#xff0c;能让请求在多个对象之间有条不紊地传递&#xff0c;直到找到最合适的“处理者”。准备好跟我一起揭开它神秘的面纱…

安装SQL Server 2022提示需要Microsoft .NET Framework 4.7.2 或更高版本

安装SQL Server 2022提示需要Microsoft .NET Framework 4.7.2 或更高版本。 原因是&#xff1a;当前操作系统版本为Windows Server 2016 Standard版本&#xff0c;其自带的Microsoft .NET Framework 版本为4.6太低&#xff0c;不满足要求。 根据报错的提示&#xff0c;点击链接…

高德地图 Readme GT 定制版 10.25.0.3249 | 极致简洁

这款定制版高德地图去除了广告&#xff0c;运行速度更快。虽然没有车道级导航、打车功能和红绿灯倒计时等功能&#xff0c;但支持正常登录和收藏功能。检测更新始终为最新版本。 大小&#xff1a;82.5M 下载地址&#xff1a; 百度网盘&#xff1a;https://pan.baidu.com/s/1Y…

Admin.NET框架使用宝塔面板部署步骤

文章目录 Admin.NET框架使用宝塔面板部署步骤&#x1f381;框架介绍部署步骤1.Centos7 部署宝塔面板2.部署Admin.NET后端3.部署前端Web4.访问前端页面 Admin.NET框架使用宝塔面板部署步骤 &#x1f381;框架介绍 Admin.NET 是基于 .NET6 (Furion/SqlSugar) 实现的通用权限开发…

Excel中根据某列内容拆分为工作簿

简介&#xff1a;根据A列的内容进行筛选&#xff0c;将筛选出来的数据生成一个新的工作簿(可以放到指定文件夹下)&#xff0c;且工作簿名为筛选内容。 举例&#xff1a; 将上面的内容使用VBA会在当前test1下生成5个工作簿&#xff0c;工作簿名分别为TEST1.xls TEST2.xls TEST3…

JavaWeb实战(1)(重点:分页查询、jstl标签与jsp、EL表达式、Bootstrap组件搭建页面、jdbc)

目录 一、jstl标签。 &#xff08;1&#xff09;基本概念。 &#xff08;2&#xff09;使用前提。 &#xff08;3&#xff09;"<%...%>"与"<%%>"。 &#xff08;4&#xff09;使用jstl标签的步骤。 1、导入对应jar包。 2、引入核心标签库。&am…

Linux:makefile的使用

makefile小结&#xff1a; makefile的应用&#xff1a; 一个简单的 Makefile 文件包含一系列的“规则”&#xff0c;其样式如下&#xff1a; 目标(target)…: 依赖(prerequiries)… 命令(command) 目标(target)通常是要生成的文件的名称&#xff0c;可以是可执行文件或OBJ文件…

springboot中使用mongodb完成评论功能

pom文件中引入 <!-- mongodb --> <dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-data-mongodb</artifactId> </dependency> yml中配置连接 data:mongodb:uri: mongodb://admin:1234561…

TCGA 编码格式解读 | 怎么区分是不是肿瘤样品?

最权威参考资料 https://docs.gdc.cancer.gov/Encyclopedia/pages/TCGA_Barcode/ "-"分割符的第四位是Sample type&#xff1a; Tumor types range from 01 - 09,normal types from 10 - 19and control samples from 20 - 29. See Code Tables Report for a compl…

百度 文心一言 vs 阿里 通义千问 哪个好?

背景介绍&#xff1a; 在当前的人工智能领域&#xff0c;随着大模型技术的快速发展&#xff0c;市场上涌现出了众多的大规模语言模型。然而&#xff0c;由于缺乏统一且权威的评估标准&#xff0c;很多关于这些模型能力的文章往往基于主观测试或自行设定的排行榜来评价模型性能…

【linux学习指南】Linux进程信号产生(二)软件中断

文章目录 &#x1f4dd; 由软件条件产⽣信号&#x1f320; 基本alarm验证-体会IO效率问题&#x1f309;设置重复闹钟 &#x1f320;如何理解软件条件&#x1f309;如何简单快速理解系统闹钟 &#x1f6a9;总结 &#x1f4dd; 由软件条件产⽣信号 SIGPIPE 是⼀种由软件条件产⽣…

蓝桥杯每日真题 - 第24天

题目&#xff1a;&#xff08;货物摆放&#xff09; 题目描述&#xff08;12届 C&C B组D题&#xff09; 解题思路&#xff1a; 这道题的核心是求因数以及枚举验证。具体步骤如下&#xff1a; 因数分解&#xff1a; 通过逐一尝试小于等于的数&#xff0c;找到 n 的所有因数…

python学opencv|读取图像

【1】引言 前序学习了使用matplotlib模块进行画图&#xff0c;今天开始我们逐步尝试探索使用opencv来处理图片。 【2】学习资源 官网的学习链接如下&#xff1a; OpenCV: Getting Started with Images 不过读起来是英文版&#xff0c;可能略有难度&#xff0c;所以另推荐一…

ROS2教程 - 2 环境安装

更好的阅读体验&#xff1a;https://www.foooor.com 2 环境安装 下面以 ROS2 的 humble 版本为例&#xff0c;介绍 ROS2 的安装。 ROS1 只能在 ubuntu 系统上安装&#xff0c;ROS2全面支持三种平台&#xff1a;Ubuntu、MAC OS X、Windows10&#xff0c;下面在 Ubuntu22.04 …

神经网络入门实战:(六)PyTorch 中的实用工具 SummaryWriter 和 TensorBoard 的说明

(一) SummaryWriter 这里先讲解 SummaryWriter &#xff0c;TensorBoard 会在第二大点进行说明。 SummaryWriter 是 PyTorch 中的一个非常实用的工具&#xff0c;它主要用于将深度学习模型训练过程中的各种日志和统计数据记录下来&#xff0c;并可以与 TensorBoard 配合使用&am…

git的使用(简洁版)

什么是 Git&#xff1f; Git 是一个分布式版本控制系统 (DVCS)&#xff0c;用于跟踪文件的更改并协调多人之间的工作。它由 Linus Torvalds 在 2005 年创建&#xff0c;最初是为了管理 Linux 内核的开发。Git 的主要目标是提供高效、易用的版本控制工具&#xff0c;使得开发者…

联想M7400Pro打印机报无法打印02 关闭电源,然后重新打开。故障检修分析

联想M7400Pro打印机无法打印02可能是由于硬件故障、软件问题、通信故障等引起的。 以下是故障的解决方法: 1、关闭打印机(可尝试多次重新启动打印机)。 2、重新放置碳粉盒组件。 3、检查打印机驱动程序是否已正确安装。 4、检查打印机的设置,确保已选择正确的打印模式…