计算机网络的性能指标
计算机网络的性能指标
1. 速率
速率是指数据在网络中传送的速度,通常用比特率或数据率来表示,单位是b/s,或bit/s,即比特每秒,或者bps(bit per second)。
速率单位:1 Ybps = 10^24 bps(尧), 1 Zbps = 10^21 bps(泽), 1 Ebps = 10^18 bps(艾), 1 Pbps = 10^15 bps(拍), 1 Tbps = 10^12 bps(太), 1 Gbps = 10^9 bps(吉), 1 Mbps = 10^6 bps(兆), 1 kbps = 10^3 bps(千)。
存储单位:1MB = 2^20B, 1KB = 2^10B,1B = 8b。
2. 带宽
带宽有两种含义:
- 信号的带宽(频带宽度),即信号的频带宽度,单位是Hz,表示信号中包含的频率成分的多少,是信号的一个重要特性。
- 传送数据的带宽(网络带宽),即网络的最高通信速率,单位是bps,表示单位时间内网络中的数据量。网络带宽通常用于衡量网络的容量和速度,它可以影响文件下载速度、流媒体播放质量等。
前者为频域1,后者为时域2。
3. 吞吐量
吞吐量是单位时间内通过某个网络(或信道、接口)的数据量,单位是bps。
吞吐量与带宽有关,但不完全相同。带宽是网络的理论最高速率,而吞吐量是实际速率,受到网络中其他因素的影响,包括网络拥塞、数据包丢失、信号干扰等。例如,带宽为100Mbps的网络,如果网络中只有一个用户,那么吞吐量也是100Mbps,但如果网络中有多个用户,那么吞吐量就会小于100Mbps。
4. 时延和时延带宽积

(1)processing delay 处理延迟
检查数据包的头部并确定将数据包发送到何处所需的时间是处理延迟的一部分。处理延迟还可能包括其他因素,例如检查在将数据包的比特从上游节点传输到路由器A时是否发生比特级错误(bit-level errors)所需的时间。高速路由器的处理延迟通常为微秒或更短的数量级。在经过这个节点(nodal)处理之后,路由器将数据包发送到连接到路由器B的队列之前。
(2)queuing delay 排队延迟
在队列中,数据包经历排队延迟,等待传输到链路上。
数据包的排队延迟取决于已经到达并排队等待传输的数据包的数量。
如果队列为空,没有其他数据包正在传输,那么我们的数据包的排队延迟将为零。
然而,如果网络拥塞,有许多数据包正在等待传输,排队延迟将会很长。
我们很快将看到,到达的数据包预计可能会遇到的其他数据包数量取决于到达队列的流量的强度和性质。
在实践中,排队延迟可以在微秒到毫秒的范围内。
(3)transmission delay 传输延迟
传输延迟可以用L/R来表示。L为数据包的长度(bits),R为链路的传输速率(bits/sec)。
对于10 Mbps以太网链路,传输速率为R=10 Mbps;对于100 Mbps以太网链路,传输速率为R=100 Mbps。
这是将数据包的所有比特推送(即传输)到链路所需的时间。
传输延迟在实际中通常为微秒到毫秒的数量级。
(4)propagation delay 传播延迟
从链路的起点传播到路由器B所需的时间被称为传播延迟。
比特的传播速度取决于链路的物理介质(如光纤、双绞铜线等),通常在2×108米/秒到3×108米/秒的范围内,接近或略低于光速。
传播延迟等于两个路由器之间的距离除以传播速度。
(5)total nodal delay 总节点延迟
总节点时延=处理时延+排队时延+传输时延+传播时延。
(6)bandwidth-delay product 时延带宽积
时延带宽积 = 带宽(单位:比特/秒) × 传播时延(单位:秒)
其中,带宽表示网络链路的传输速率。
举个例子,假设一个链路的带宽为10 Mbps(兆比特/秒),时延为100 毫秒(0.1 秒),那么时延带宽积的计算如下:
时延带宽积 = 10 Mbps × 0.1 秒 = 1 Mbps × 秒。
其中,带宽表示网络链路的传输速率,时延就是前面所说的总时延。
时延带宽积的单位通常是比特(bit)或字节(byte),表示在网络中能够同时存在的未确认数据量。它是网络性能的一个重要指标,可以用来评估网络的吞吐量和延迟特性。时延带宽积主要用于衡量网络链路的传输性能和容量。
5. 往返时间RTT
RTT(Round-Trip Time)是指发送端发送数据开始,到发送端收到来自接收端的确认(接收端收到数据后便立即发送确认),总共经历的时间。
RTT不包括数据发送时间,只包括从发送端发送数据开始,到发送端收到接收端确认这段时间。
发送时间 = 数据长度 发送速率 发送时间=\frac{数据长度}{发送速率} 发送时间=发送速率数据长度
有效数据率 = 数据长度 发送时间 + R T T 有效数据率=\frac{数据长度}{发送时间+RTT} 有效数据率=发送时间+RTT数据长度
6. 利用率
利用率是指某资源的繁忙程度,即该资源被利用的时间与总时间的比值。
利用率分为信道利用率和网络利用率。
信道利用率:信道利用率是指信道有数据通过的时间与总时间的比值。
网络利用率:网络利用率是指网络中有数据通过的时间与总时间的比值,它是信道利用率的加权平均值。
信道利用率并不是越大越好,因为信道利用率过大会导致数据包丢失率增大,从而降低网络的吞吐量。因为当信道利用率过大时,数据包在传输过程中的时延也会增大,从而导致数据包在缓存中的存储时间增加,从而增大了数据包丢失的概率。
空闲时的时延D与利用率U成反比。
频域是关于信号在频率领域分布的领域。在频域中,信号以频率为自变量,通常使用频谱图或频域图表示。这种表示方式可以显示信号包含的不同频率分量的幅度和相位信息。 ↩︎
时域是信号随时间变化的领域。在时域中,信号以时间为自变量,通常用波形图表示。这种表示方式可以显示信号的振幅如何随时间变化。 ↩︎
相关文章:
计算机网络的性能指标
计算机网络的性能指标 1. 速率 速率是指数据在网络中传送的速度,通常用比特率或数据率来表示,单位是b/s,或bit/s,即比特每秒,或者bps(bit per second)。 速率单位:1 Ybps 10^24 bps(尧), 1 Zbps 10^21…...
BBS项目day04 文章详情页、点赞点菜、评论功能
一、路由 from django.contrib import admin from django.urls import path, re_path from app01 import views from django.views.static import serve from django.conf import settingsurlpatterns [path(admin/, admin.site.urls),# 注册path(register/, views.register)…...
el-table分页后序号连续的两种方法
实现效果: 第一页排序到10,第二页的排序应从11开始 实现方法一: 在el-table的序号列中使用template定义 <el-table><el-table-columnmin-width"10%"label"序号"><template slot-scope"scope"…...
Nginx反向代理技巧
跨域 作为一个前端开发者来说不可避免的问题就是跨域,那什么是跨域呢? 跨域:指的是浏览器不能执行其他网站的脚本。它是由浏览器的同源策略造成的,是浏览器对javascript施加的安全限制。浏览器的同源策略是指协议,域名…...
kafka--kafka的基本概念-副本概念replica
三、kafka的基本概念-副本概念replica Broker 表示实际的物理机器节点 Broker1中的绿色P1表示主分片Broker2中的蓝色P1表示副本分片,其余类似,就是主从的概念,如果一个Broker挂掉了,还有其它的节点来保证数据的完整性 P可以看做分…...
css伪元素实现li列表圆点相连+锚点跳转悬浮窗实现
实现效果: html代码: <div class"sidenav"><ul class"nav-text progressbar"><!-- data-target的值对应要跳转的模块的id --><li data-target"module1"><div class"text">锚点…...
IronPDF for .NET Crack
IronPDF for .NET Crack ronPDF现在将等待HTML元素加载后再进行渲染。 IronPDF现在将等待字体加载后再进行渲染。 添加了在绘制文本时指定旋转的功能。 添加了在保存为PDFA时指定自定义颜色配置文件的功能。 IronPDF for.NET允许开发人员在C#、F#和VB.NET for.NET Core和.NET F…...
【C++进阶】继承、多态的详解(多态篇)
【C进阶】继承、多态的详解(多态篇) 目录 【C进阶】继承、多态的详解(多态篇)多态的概念多态的定义及实现多态的构成条件(重点)虚函数虚函数的重写(覆盖、一种接口继承)C11 override…...
excel快速选择数据、选择性粘贴、冻结单元格
一、如何快速选择数据 在excel中,希望选择全部数据,通常使用鼠标选择数据然后往下拉,当数据很多时,也可单击单元格使用ctrl A选中全部数据,此外,具体介绍另一种方法。 操作:ctrl shift 方向…...
【数仓建设系列之一】什么是数据仓库?
一、什么是数据仓库? 数据仓库(Data Warehouse,简称DW)简单来讲,它是一个存储和管理大量结构化和非结构化数据的存储集合,它以主题为向导,通过整合来自不同数据源下的数据(比如各业务数据,日志文件数据等)…...
Vue2-配置脚手架、分析脚手架、render函数、ref属性、props配置项、mixin配置项、scoped样式、插件
🥔:总有一段付出了没有回报的日子 是在扎根 更多Vue知识请点击——Vue.js VUE2-Day6 配置脚手架脚手架结构render函数vue.js与vue.runtime.xxx.js的区别引入render函数为什么要引入残缺的vue呢? 脚手架默认配置ref属性props配置项传递数据接收数据注意点…...
VS2015项目中,MFC内存中调用DLL函数(VC6生成的示例DLL)
本例主要讲一下,用VC6如何生成DLL,用工具WinHex取得DLL全部内容,VC2015项目加载内存中的DLL函数,并调用函数的示例。 本例中的示例代码下载,点击可以下载 一、VC6.0生成示例DLL项目 1.新建项目,…...
人流目标跟踪pyqt界面_v5_deepsort
直接上效果图 代码仓库和视频演示b站视频006期: 到此一游7758258的个人空间-到此一游7758258个人主页-哔哩哔哩视频 代码展示: YOLOv5 DeepSORT介绍 YOLOv5 DeepSORT是一个结合了YOLOv5和DeepSORT算法的目标检测与多目标跟踪系统。让我为您详细解释一…...
angular 子组件ngOnChanges监听@input传入的输入属性
在进入主题之前,先了解一下angular的生命周期。 生命周期 钩子分类 指令与组件共有的钩子 ngOnChangesngOnInitngDoCheckngOnDestroy 组件特有的钩子 ngAfterContentInitngAfterContentCheckedngAfterViewInitngAfterViewChecked 生命周期钩子的作用及调用顺序 …...
移植PeerTalk开源库IOS的USB通信监听服务到QT生成的FFmpeg工程
1.添加生成的PeerTalk库 下图选中部分为FFmpeg依赖库 将USB通信服务的m与h文件添加到工程 因为OC文件使用了弱指针,所以要启用弱指针支持 因为FFmpeg拉流动用到本地网络,所以要在plist文件中启动本地网络使用 设置PeerTalk为嵌入模式 设置Runpath Search Paths为@executable_p…...
PHREEQC模型化学热力学理论和数据库.dat、各种模拟反应平衡反应模拟、化学动力模拟、反应迁移模拟
PHREEQC是一个用于计算多种低温水文地球化学反应的计算机软件,以离子缔合水模型为基础的PHREEQC能够(1)计算物质形成种类与饱和指数;(2)模拟地球化学反演过程;(3)计算批反…...
centos下使用jemalloc解决Mysql内存泄漏问题
参考: MySQL bug:https://bugs.mysql.com/bug.php?id83047&tdsourcetags_pcqq_aiomsg https://github.com/jemalloc/jemalloc/blob/dev/INSTALL.md (1)ptmalloc 是glibc的内存分配管理 (2)tcmalloc…...
【100天精通python】Day41:python网络爬虫开发_爬虫基础入门
目录 专栏导读 1网络爬虫概述 1.1 工作原理 1.2 应用场景 1.3 爬虫策略 1.4 爬虫的挑战 2 网络爬虫开发 2.1 通用的网络爬虫基本流程 2.2 网络爬虫的常用技术 2.3 网络爬虫常用的第三方库 3 简单爬虫示例 专栏导读 专栏订阅地址:https://blog.csdn.net/…...
开源和自研——机器人
双足机器人: MPC技术:封闭性非常高。没有开源方案可抄。 因为开源,不需要从0构建。 这也是前两年,国外一开源华为就遥遥领先。 射频芯片/射频天线:技术封闭。华为虽然做通信,但却没有攻破。 鸿蒙&#…...
【AIGC 讯飞星火 | 百度AI|ChatGPT| 】智能对比
AI智能对比 🍸 前言🍺 概念类对比🍵 讯飞🍵 百度AI🍵 chatGPT 🍹 功能类对比☕ 讯飞☕ 百度AI☕ chatGPT 🥃 可输入字数对比🥤 百度AI🥤 讯飞🥤 chatGPT &…...
接口测试中缓存处理策略
在接口测试中,缓存处理策略是一个关键环节,直接影响测试结果的准确性和可靠性。合理的缓存处理策略能够确保测试环境的一致性,避免因缓存数据导致的测试偏差。以下是接口测试中常见的缓存处理策略及其详细说明: 一、缓存处理的核…...
DockerHub与私有镜像仓库在容器化中的应用与管理
哈喽,大家好,我是左手python! Docker Hub的应用与管理 Docker Hub的基本概念与使用方法 Docker Hub是Docker官方提供的一个公共镜像仓库,用户可以在其中找到各种操作系统、软件和应用的镜像。开发者可以通过Docker Hub轻松获取所…...
Go 语言接口详解
Go 语言接口详解 核心概念 接口定义 在 Go 语言中,接口是一种抽象类型,它定义了一组方法的集合: // 定义接口 type Shape interface {Area() float64Perimeter() float64 } 接口实现 Go 接口的实现是隐式的: // 矩形结构体…...
从深圳崛起的“机器之眼”:赴港乐动机器人的万亿赛道赶考路
进入2025年以来,尽管围绕人形机器人、具身智能等机器人赛道的质疑声不断,但全球市场热度依然高涨,入局者持续增加。 以国内市场为例,天眼查专业版数据显示,截至5月底,我国现存在业、存续状态的机器人相关企…...
相机从app启动流程
一、流程框架图 二、具体流程分析 1、得到cameralist和对应的静态信息 目录如下: 重点代码分析: 启动相机前,先要通过getCameraIdList获取camera的个数以及id,然后可以通过getCameraCharacteristics获取对应id camera的capabilities(静态信息)进行一些openCamera前的…...
CSS设置元素的宽度根据其内容自动调整
width: fit-content 是 CSS 中的一个属性值,用于设置元素的宽度根据其内容自动调整,确保宽度刚好容纳内容而不会超出。 效果对比 默认情况(width: auto): 块级元素(如 <div>)会占满父容器…...
GruntJS-前端自动化任务运行器从入门到实战
Grunt 完全指南:从入门到实战 一、Grunt 是什么? Grunt是一个基于 Node.js 的前端自动化任务运行器,主要用于自动化执行项目开发中重复性高的任务,例如文件压缩、代码编译、语法检查、单元测试、文件合并等。通过配置简洁的任务…...
如何更改默认 Crontab 编辑器 ?
在 Linux 领域中,crontab 是您可能经常遇到的一个术语。这个实用程序在类 unix 操作系统上可用,用于调度在预定义时间和间隔自动执行的任务。这对管理员和高级用户非常有益,允许他们自动执行各种系统任务。 编辑 Crontab 文件通常使用文本编…...
Git 3天2K星标:Datawhale 的 Happy-LLM 项目介绍(附教程)
引言 在人工智能飞速发展的今天,大语言模型(Large Language Models, LLMs)已成为技术领域的焦点。从智能写作到代码生成,LLM 的应用场景不断扩展,深刻改变了我们的工作和生活方式。然而,理解这些模型的内部…...
基于Java+VUE+MariaDB实现(Web)仿小米商城
仿小米商城 环境安装 nodejs maven JDK11 运行 mvn clean install -DskipTestscd adminmvn spring-boot:runcd ../webmvn spring-boot:runcd ../xiaomi-store-admin-vuenpm installnpm run servecd ../xiaomi-store-vuenpm installnpm run serve 注意:运行前…...
