虹科分享 | 网络性能监控 | 网络中的应用性能意味着什么?

news2024/9/20 13:08:43

TCP协议的可靠性

数据包丢失是对网络的破坏,因为它导致延迟。TCP协议建立了可靠的数据传输,但掩盖了丢包的影响。TCP确保数据的传输是基于一个叫做 "滑动窗口 "的概念。这种机制控制着传输的字节序列和收到的确认。

在排序的帮助下,接收方可以通知发送方丢失的数据(如数据包丢失)。独立地讲,发送方可以通过重传定时器的到期来检测丢包。从性能分析的角度来看,必须了解丢包的重要性,以避免 "机器中的幽灵"。下面的文章探讨了这些机制的行为和性能。

重传计时器

每个传输的数据包都由发送方链接到重传计时器。如果计时器在已传输的数据段被确认之前过期,则该数据段将被声明为丢失并重新传输。在性能方面,重传定时器有两个重要特点:

  • 初始重新传输超时 (RTO) 的默认值几乎始终为 3000 毫秒。随后,该值会根据实际路径重传时间动态调整为更真实的值。

  • 对于数据包的后续重新传输,超时值始终加倍。

对于短数据流(例如网络流量),重传计时器用于检测数据包丢失。只有 1000 字节的消息在单个数据包中传输。当然,如果数据包丢失,接收方无法发送接收确认,因为接收方不知道丢失的数据包曾经发送过。如果数据包在 TCP 连接的早期丢失,例如在三次握手期间丢失 SYN 数据包,则数据包丢失在三秒钟内不会恢复。

三次重复的ACK

在较大的数据流中,可以在重传定时器过期前检测到丢失的数据包。这是借助于三个收到的ACK副本来完成的。这种机制通常比等待重传定时器过期更有效。如果到达的节点收到的数据包不符合顺序,它就会发出重复的ACKs。失序的数据包可以是在丢失的数据包数据之后发送的数据包。重复的ACK包包含接收方仍在等待的准确序列号。当发送节点收到第三个重复的ACK时,它认为有关的数据包不仅被延迟,而且实际上已经丢失。结果,丢失的数据包被重新传输。如果发生这种情况,发件人会假定网络中存在拥堵,并将拥堵窗口减少50%,以积极应对拥堵。慢速启动机制会缓慢增加CWD值。

例如,如果一个服务器向客户传输一个大文件,由于慢速启动机制,发送节点的吞吐量提升得更慢。当拥塞窗口达到24时,数据包丢失会被一个三重复的ACK检测到。随后,服务器重传丢失的数据,CWD值减少到12。慢速启动机制将在这个时候重新启用其拥塞避免模式。这种行为在现代网络中经常看到。

结论和纠正措施

显而易见的是,防止因拥堵造成的数据包丢失将提高性能。然而,这只有通过减少其他流量的拥堵才能实现,可以通过以下方式实现:

  • 用于排队优先的QoS政策

  • 减少总流量或增加带宽

如果数据包丢失是由于其他情况造成的,如网络接口故障、队列配置错误或电缆连接不良,则必须确保TCP连接不会被不必要地关闭,不被不必要地超时,人们还可以减少重传超时的值。

扩展阅读

 虹科Allegro网络万用表 - 网络故障排除的一体化解决方案

      虹科Allegro网络万用表是是先进的网络诊断工具,通过浏览器中的Web界面访问分析数据。简单部署,无需配置,只需要点击几下就可检测到网络问题。可以针对问题区域或错误,并可以从预算的流量中捕获PCAP以进一步分析。

  • 一体化分析设备

  • 软件永久许可(全功能可用)

  • L2-L7全面分析

  • 即插即用,无需配置

  • 多种型号可选,1-200Gbit/s,满足不同规模网络需求

  • 高速全流量捕获分析,回溯分析

  • 中文界面支持

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

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

相关文章

项目管理之信息文档管理与配置管理(第一篇)

目录 前言 一、软件文档的分类 1.开发文档 2.产品文档 3.管理文档 二、文档质量的四个等级 1.1级文档 2.内部文档(2级) 3.工作文档(3级文档) 4.正式文档(4级文档) 三、配置管理 1.配置管理的定义…

XCTF-web1文件包含绕过file include

场景一: fileclude 题目描述 好多file呀! 进入场景 给出PHP源码 包含flag.php文件 GET获取两个参数file1和file2 当参数不为空时,使用file_get_contents()函数将文件内容读入字符串,判断是否为"hello ctf" 利用ph…

vue项目前端优化处理方案整理

vue项目前端优化处理 目录 vue项目前端优化处理 路由懒加载 按需引入模块 外部资源引入,cdn加载 移除项目中所有的console.log()控制台信息数据打印 是否在构建生产包时生成sourcdeMap 上传图片文件压缩 开启gizp压缩 前端页面代码优化 路由懒加载 路由懒…

【深度学习】特征图的上采样(nn.Upsample)和转置卷积(nn.ConvTranspose2d) | pytorch

文章目录前言一、nn.Upsample 上采样二、nn.ConvTranspose2d 转置卷积前言 这次就不废话了,我想赶在10点前回去洗头(现在9.17,还差一篇文章) 一、nn.Upsample 上采样 该函数有四个参数: 参数的介绍如下&#xff1a…

工厂模式(Factory Pattern) 与抽象工厂模式(Abstract Factory Pattern)

工厂模式(Factory Pattern) 与抽象工厂模式(Abstract Factory Pattern) 工厂模式属于构造型模式,是项目中最常用到的一种设计模式。它的主要作用是提供一种简单的创建对象的方式,使用者无需知道创建实例的细节以及需要…

重启虚拟机启动Docker常见问题

文章目录重启虚拟机启动Docker常见问题一、Cannot connect to the Docker daemon at unix:///var/run/docker.sock. Is the docker daemon running?二、admin is not in the sudoers file. This incident will be reported.(没有这个问题请自觉跳过)三、…

华清远见11.17

1.在用户空间中有个字符数组,要求在内核空间打印,用dmesg查看。(ioctl实现) zy.h,封装一个发送用的命令码 #ifndef __LED_H__ #define __LED_H__ #define UACCESS_BUF _IOW(a,1,char [128]) #endif zy.c 申请并自动创…

2022 开源之夏|EMQ 三大开源项目开发圆满收官

今年暑假,EMQ 携手开源之夏,与高校学生开展了一场精彩纷呈的开源之旅。开源之夏(OSPP)是由中科院软件所「开源软件供应链点亮计划」发起的、面向高校学生的暑期开源活动,旨在鼓励在校学生积极参与开源软件的开发维护&a…

CE-Net: Context Encoder Network for 2D MedicalImage Segmentation

Title:用于二维医学图像分割的上下文编码器网络 摘要:在医学图像分割领域中,基于UNet已经成为主流的应用框架。但是在UNet结构中连续的池化和跨步卷积操作会导致一些空间信息的丢失。在本文中提出了一个上下文编码器网络(简称为CE-Net&#…

数据分析师的Windows装机必备软件

文章目录1. Python安装包列表2. Office 3653. Visual Studio Code4. Git5. 向日葵6. 聊天软件7. OneDrive8. iCloud9. 网易邮箱大师10. 搜狗输入法11. 阿里云盘对于数据分析师,装机是再经常不过的一件事情,但是每次装机都要想装什么好,找来找去,故列出来供大家参考. 当然, 系统…

CentOS7自有服务和软件包

文章目录什么是服务管理服务的命令:systemctl列出服务服务启停开机自动启动服务服务状态软件包RPM查询安装了什么软件卸载某个软件安装某个软件查询文件所属的包名查询软件安装后,生成了哪些文件YUM命令epel-release什么是服务 什么是程序(C…

最优化——凸优化概述

引言 这是中科大最优化理论的笔记,中科大凌青老师的凸优化课程,详尽易懂,基础扎实。不论是初学者还是从业多年的人,都值得系统地好好学一遍。 本文主要介绍什么是凸优化,通过几个例子来阐述什么是凸优化问题。让大家…

3年测试经验,面试27k自动化测试岗被diss,想给进阶自动化的人提个醒...

毕业后一直从事功能测试的工作,时间久了就没有一点想法,天天都是点点点,也没有一点提升,看着身边一个个的人都忙得不可开交,打听之后知道他们都是在技术上忙,而不像我,在杂事上忙,特…

vue 使用screenfull 实现全屏展示,全局水印实现, 以及全屏放大后部分组件无法使用,水印无法全屏显示问题的解决

需求:1. web项目中看板页面需要单独全屏显示 2. 项目全局增加水印,水印文字为当前用户登录姓名,登录页不显示水印 出现问题描述 单页面进行全屏显示,下拉,时间选择器,抽屉等组件被 全屏覆盖到下一层&…

MyBatis入门基础

目录 1.什么是MyBatis 2.第一个MyBatis查询 2.1 准备工作 2.2 实际操作 2.2.1 定义接口 2.2.2 创建XML实现上述接口 2.3 单元测试 2.3.1 单元测试的优势 2.3.2 创建并使用单元测试 2.3.3 有关断言 3.增删改的基本操作 3.1 插入操作 特殊的添加:返…

【PyTorch】Torchvision

文章目录三、Torchvision1、Dataset2、DataLoader2.1 test_data2.2 test_loader2.3 drop_last2.4 shuffle三、Torchvision PyTorch官网:https://pytorch.org 1、Dataset 数据集描述:https://www.cs.toronto.edu/~kriz/cifar.html 数据集使用说明&#…

SpringCloud案例day05

SpringCloud Gateway网关 案例1&#xff1a;环境搭建 可以复制 Service-A9001 改成Gateway-C9009 》1&#xff1a;创建工程导入依赖 <dependency><groupId>org.springframework.cloud</groupId><artifactId>spring-cloud-starter-gateway</artif…

汽车全景视频制作让企业营销传播无界长久

全景视频制作 全景VR视频&#xff0c;顾名思义就是能够使我们看到拍摄点周围360景致的视频。传统视频拍摄受限于镜头视角&#xff0c;所以我们只能看到镜头前方180内的景物。而全景VR视频能够看到周围360以及上下180各个角度的一切景物&#xff0c;用户能够更加多方位的观赏视频…

可观测性-Event-指标事件采样策略总结

文章目录前言采样的几种策略简单随机采样周期性完整采样基于条件的采样前言 在默认情况下&#xff0c;系统会采集所有追踪&#xff08;Tracing&#xff09;的数据。但是如果系统比较复杂&#xff0c;采集的端点比较多的时候&#xff0c;对存储压力比较大&#xff0c;这个时候我…

Educational Codeforces Round 135 (Rated for Div. 2)

A:思维 题意&#xff1a;箱子里有N个颜色的球&#xff08;用下标代表不同的颜色&#xff09;&#xff0c;每个颜色的球对应一定的数量&#xff0c;你会进行多次拿球的操作&#xff0c;当箱子里的球颜色一致时&#xff0c;你就不能再拿球了&#xff0c;问最后颜色一致的球是哪个…