【计算机网络】第 2 课 - 计算机网络的性能指标

news2024/11/15 8:09:26

        欢迎来到博主 Apeiron 的博客,祝您旅程愉快 ! 时止则止,时行则行。动静不失其时,其道光明。

目录

1、缘起

2、性能指标

2.1、速率

2.2、带宽

2.3、吞吐量

2.4、时延

2.5、时延带宽积

2.6、往返时间

2.7、利用率

2.8、丢包率 

3、总结


1、缘起

        性能指标可以从不同的方面来度量计算机网络的性能。常用的计算机网络的性能指标有以下 8 个:速率带宽吞吐量时延时延带宽积往返时间利用率丢包率


2、性能指标

2.1、速率

        连接在计算机网络上的主机在数字信道上 传送比特的速率,也称为比特率或数据率。


2.2、带宽

带宽是比特理论上能达到的最高速率,速率是带宽的一种特殊形式

        大家可能有过这样的经历,有朋友问:“你家的出口网速有多大?”,你可能回答:“200M”。这里,我们往往省略说 “比特每秒”。完整的描述应该是 “最高速率为 200 Mb/s”,而这个最高速率,其时就是你家网络的出口带宽。 这是一个很重要的计算机网络性能指标,它直接关系到我们的网络应用体验。

“ 带宽 ”的这两种表述之间有着密切的联系。一条通信线路的“频带宽度”越宽,其所传输数据的“最高数据率”也越高。


2.3、吞吐量

        吞吐量表示在 单位时间内通过某个网络(或信道、接口)的数据量。吞吐量被经常用于对现实世界中的网络的一种测量,以便知道实际上到底有多少数据量能够通过网络。吞吐量 受网络的带宽或额定速率的限制。 

        例如,这是一个带宽为 1Gb/s 的以太网,其吞吐量受带宽限制,最高为 1 Gb/s ,通常只能达到 700 Mb/s。


2.4、时延

       

        通过上图可知,网络时延由三部分构成,他们是:发送时延传播时延处理时延


2.5、时延带宽积

        若发送端连续发送数据,则在所发送的第一个比特即将到达终点时,发送端就已经发送了时延带宽积个比特。链路的时延带宽积又称为 以比特为单位的链路长度。 


2.6、往返时间

        在许多情况下,因特网上的信息不仅仅单方向传输,而是双向交互;我们有时很需要知道双向交互一次所需的时间;因此,往返时间 RTT(Round-Trip Time)也是一个重要的性能指标。

大家来看一下这个例子,以太网上的某台主机,要与无线局域网中的某台主机进行信息交互。往返时间 RTT 是指从源主机发送分组开始,直到源主机收到来自目的主机的确认分组为止,所需要的时间。


2.7、利用率

        根据 排队论,当某信道的利用率最大时,该信道引起的时延也会迅速增加;因此,信道利用率并非越高越好。

        如果令 D0 表示网络空闲时的时延,D 表示网络当前的时延,那么在适当的假定条件下,可以用下面的简单公式来表示 DD0 和 利用率 U 之间的关系:

 D=\frac{​{D0}{}}{1-U}

 

根据上图可以得出如下结论:

①  当网络的利用率达到 50% 时,时延就要加倍

②  当网络的利用率超过 50% 时,时延急剧增大

③  当网络的利用率接近 100% 时,时延就趋近于无穷大

        因此,一些拥有较大主干网的 ISP 通常会控制它们的信道利用率不超过 50%。如果超过了,就要准备扩容,增大线路的带宽。

        也不能使信道利用率太低,这会使宝贵的通信资源被白白浪费。应该使用一些机制,可以根据情况动态调整输入到网络中的通信量,使网络利用率保持在一个合理的范围内。 


2.8、丢包率 

        丢包率即 分组丢失率,是指在一定的时间范围内,传输过程中 丢失的分组数量与总分组数量的比率丢包率具体可分为 接口丢包率结点丢包率链路丢包率路径丢包率网络丢包率等。

        丢包率是 网络运维人员 非常关心的一个网络性能指标,但对于普通用户来说往往并不关心这个指标,因为他们通常意识不到网络丢包。

分组丢失主要有两种情况:

①  分组在传输过程中出现误码,被结点丢弃

例如,主机发送的分组在传输过程中出现了误码,当分组进入传输路径中的结点交换机后,被节点交换机检测出了误码,进而被丢弃。至于结点交换机是 如何检测出分组有误码,我将会在后续的博客中介绍。

②  分组到达一台队列已满的分组交换机时被丢弃;因为在通信量较大时就可能造成 网络拥塞

        实际上,路由器会根据自身的拥塞控制方法,在输入缓存还未满的时候就主动丢弃分组。

因此,丢包率反映了网络的拥塞情况:

①  无拥塞时,路径丢包率为 0

②  轻度拥塞时,路径丢包率为 1%~4%

③  严重拥塞时,路径丢包率为 5%~15%

        当网络的丢包率较高时,通常无法使网络应用正常工作。


3、总结

        本期的分享总结就到这里了,如果有疑问的小伙伴儿,我们在评论区交流嗷~~~,笔者必回,我们下期再见啦 !!!

博客中难免存在疏漏和错误之处,皆归因于作者水平有限,诚请各位读者不吝指正 !

<计算机网络> 专栏系列持续更新,欢迎订阅关注 !

 

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

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

相关文章

【Cartopy学习系列】Cartopy中的投影类型总结

一、PlateCarree&#xff08;圆柱投影&#xff09; PlateCarree 是Cartopy的默认投影&#xff0c;投影将地物投影到圆柱面上再展开&#xff0c;常用来绘制世界地图。该投影具有经线或纬线方向等度数的特点&#xff0c;亦称等经纬度投影。 class cartopy.crs.PlateCarree(cent…

【Kafka】Kafka消费者

【Kafka】Kafka消费者 文章目录 【Kafka】Kafka消费者1. 消费方式1.1 消费者工作流程1.2 消费者组原理1.3 消费者组初始化流程1.4 消费者组详细消费流程1.5 消费者重要参数 2. 消费者API2.1 独立消费者案例2.2 订阅分区2.3 消费者组案例 1. 消费方式 pull(拉)模式&#xff1a;…

Linux上查看外接USB设备类型

最近遇到一个问题&#xff0c;需要在shell脚本中识别当前显示器的USB触屏线是否插入&#xff0c;并读取显示器名称&#xff0c;以确定是否是想要的。 解决思路&#xff1a; lsusb命令可以列出所有的外接USB设备&#xff1a; 其中 “Atmel Corp. Atmel maXTouch Digitizer” 即为…

rabbitmq使用springboot实现direct模式

一、 Direct模式 类型&#xff1a;direct特点&#xff1a;Direct模式是fanout模式上的一种叠加&#xff0c;增加了路由RoutingKey的模式。 二、coding Ⅰ 生产者 1、引入相应的pom文件 pom.xml <?xml version"1.0" encoding"UTF-8"?> <pro…

Linux 学习记录48(QT篇待完成)

Linux 学习记录48(QT篇) 本文目录 Linux 学习记录48(QT篇)一、1.2. 二、三、四、练习1. 自制文本编辑器(0. main.cpp(1. txt_window.h(2. txt_window.cpp 2. 登录界面完善 一、 1. 2. 二、 三、 四、 练习 1. 自制文本编辑器 (0. main.cpp #include "txt_window.h…

JavaWeb 笔记——5

JavaWeb 笔记——5 一、Filter1.1、概述1.2、Filter快速入门1.3、Filter执行流程1.4、Filter使用细节1.5、Filter-案例-登陆验证 二、Listener2.1、Listener概述与分类2.2、ServletContextListener使用 三、AJAX3.1、AJAX概述3.2、AJAX快速入门3.3、使用Ajax验证用户名是否存在…

《阿里大数据之路》研读笔记(3)事实表

不理解可以先看看这个例子 例子里的start_time可以看成下单时间 end看成确认收货时间 这个例子中累计快照事实表和拉链表类似 图解HIVE累积型快照事实表_累积快照事实表_小基基o_O的博客-CSDN博客 累计快照事实表 我的理解是 根据上面的例子 就是一行代表多个业务过程 每个…

day18 哈希表

题目一&#xff1a;两个数组的交集 题目描述 int* intersection(int* nums1, int nums1Size, int* nums2, int nums2Size, int* returnSize){//哈希表 int arr_hash[1000] {0};int *arr_result (int *)malloc(sizeof(int)* nums1Size);*returnSize 0;for(int i 0;i < nu…

强化学习|底层逻辑与本质 引导式学习

强化学习的本质是什么&#xff0c;底层逻辑是什么&#xff1f; 强化学习的本质是一个智能体通过与环境的交互&#xff0c;通过尝试和错误的方式学习如何采取行动来最大化累积奖励。它的底层逻辑基于马尔可夫决策过程&#xff08;Markov Decision Process&#xff0c;MDP&#x…

【C++进阶之路】模拟实现string类

前言 本文所属专栏——【C进阶之路】 上一篇,我们讲解了string类接口的基本使用&#xff0c;今天我们就实战从底层实现自己的string类&#xff0c;当然实现所有的接口难度很大&#xff0c;我们今天主要实现的常用的接口~ 一、String类 ①要点说明 1.为了不与库里面的string冲…

※Redis的事务、乐观锁和悲观锁

1.是神魔 在高并发的环境下&#xff0c;多个线程去竞争同一个资源&#xff0c; 比较常见的有高铁抢票系统&#xff0c;商品秒杀系统等&#xff0c;我们需要保证数据正确&#xff0c;同时系统的吞吐也要尽可能高。2.解决方案 1. 一般多线程同步我们就会想到加锁&#xff0c;用…

c语言进阶-文件的打开和读写

本节重点知识点 为什么使用文件 什么是文件 文件名的组成 操作文件的基本过程 文件的打开与关闭 文件打开函数&#xff1a; 参数介绍 打开文件的方式&#xff1a; 使用绝对路径和相对路径都可以打开文件 文件的顺序读写函数&#xff1a; 写文件模式下&#xff0c;在打开文件fo…

-XX:NewSize=20m -XX:MaxNewSize=40m,-Xmn30m,-XX:NewRatio=5

高优先级&#xff1a;-XX:NewSize -XX:MaxNewSize设置新生代初始值&#xff0c;最大值中优先级&#xff1a;-Xmn&#xff08;默认等效 -Xmn-XX:NewSize-XX:MaxNewSize?&#xff09;设置新生代初始值-XX:NewRatio设置老年代和新生代的比例&#xff1b;例如&#xff1a;-XX:NewR…

CMake+OpenMP加速运算测试

目录 写在前面代码编译运行关于加速效果参考完 写在前面 1、本文内容 cmake编译测试openmp的效果 2、平台/环境 windows/linux均可&#xff0c;cmake 3、转载请注明出处&#xff1a; https://blog.csdn.net/qq_41102371/article/details/131629705 代码 代码包含同样的for循…

Dockerfile自定义镜像 - 基于 java:8-alpine 镜像,将一个Java项目构建为镜像

目录 一、前置知识 1.镜像结构 2.Dockerfile是什么 二、自定义一个 java 项目镜像 1.创建一个空目录&#xff0c;在这个空目录中创建一个文件&#xff0c;命名为 DockerFile&#xff0c;最后将 java 项目打包成 jar 包&#xff0c;放到这个目录中 2.编写 Dockerfile 文件 …

Vue3+Vite项目引入Element-plus并配置按需自动导入

一、安装Element-plus # 选择一个你喜欢的包管理器# NPM $ npm install element-plus --save# Yarn $ yarn add element-plus# pnpm $ pnpm install element-plus我使用的是 pnpm&#xff0c;并且顺便将 element-plus/icons一起引入 pnpm install element-plus element-plus/…

Python开启Http Server

用 Python 部署了一个具有 FTP 功能的服务器&#xff0c;电脑在局域网内通过 FTP 下载想要传输的文件。 注&#xff1a;这种方法不仅在自己家的路由器上可行&#xff0c;亲测在下面两种场景也可行&#xff1a; 需要用手机验证码连接的公共 WIFI 上&#xff1b;用手机开热点&a…

Kubernetes的Pod中进行容器初始化

Kubernetes的Pod中进行容器初始化 在很多应用场景中&#xff0c;应用在启动之前都需要进行如下初始化操作&#xff1a; 等待其他关联组件正确运行(例如数据库或某个后台服务)。 基于环境变量或配置模板生成配置文件。 从远程数据库获取本地所需配置&#xff0c;或者将自身注…

将一个3x3的OpenCV旋转矩阵转换为Eigen的Euler角

代码将一个3x3的OpenCV旋转矩阵转换为Eigen的Euler角。 #include <iostream> #include <Eigen/Core> #include <Eigen/Geometry> #include <opencv2/core.hpp>using

Sharding-JDBC【Sharding-JDBC介绍、数据分片剖析实战】(一)-全面详解(学习总结---从入门到深化)

目录 Sharding-JDBC介绍 数据分片剖析实战 Sharding-JDBC介绍 背景 随着通信技术的革新&#xff0c;全新领域的应用层出不穷&#xff0c;数据存量随着应 用的探索不断增加&#xff0c;数据的存储和计算模式无时无刻不面临着创新。面向交易、大数据、关联分析、物联网等场景…