当前位置: 首页 > news >正文

计算机网络 TCP协议的流量控制

流量控制的功能就是让发送方的发送速率不要太快,以便让接收方来的及接受,因此可以说流量控制是一个速度匹配服务,匹配发送方的发送速率和接收方的读取速率。

TCP利用滑动窗口机制来实现流量控制,滑动窗口的基本原理是,TCP要求发送方维持一个接受窗口,接收方会根据当前接收缓存的大小,动态地调整接受窗口的大小,其大小反映了接收方的容量。接收方,将其放在TCP报文段首部中的“窗口”字段,以通知发送方。发送方的发送窗口不能够超过接收方给出的接受窗口值,以限制发送方向网络注入报文的速率。

TCP的拥塞控制,

拥塞控制是指,防止过多的数据注入网络中,保证网络中的路由器或者链路不至于过载。

出现拥塞的时候,断电并不了解拥塞发生的细节,对于通信的断电来说,拥塞往往表现为通信时间延迟的增加。

拥塞控制与流量控制的区别:

1,拥塞控制是让网络能够承受现有的网络负荷,是一个全局性的过程,涉及所有的主机、所有的路由器,以及与降低网络传输性有关的所有因素。想法,流量控制往往是指的是点对点的通信量的控制,是一个端到端的问题,他所要做的就是抑制发送端发送数据的速率,以便似的接受端来的及接受。当然,拥塞控制和流量控制也有类似的地方,即,他们都通过控制发送方发送数据的速率来达到控制的效果。

TCP进行拥塞控制的算法有四种:蛮开始,拥塞避免,快重传和快恢复。

发送方在确认发送报文段的速率的时候,既要考虑接收方的接受能力,还要从全局考虑不要使得网络发声拥塞。因此,除了上节介绍的接收窗口,TCP嗨哟阿秋发送方维持一个拥塞窗口,其大小取决于网络的拥塞程度,并且动态的变化。发送方控制拥塞窗口的原则是,只要网络没有出现拥塞,拥塞的窗口就再大一些,以便吧更多的分组发送出去,以提高网络的吕永绿。但是只要网络出现拥塞,拥塞的窗口就减少一些,以减少注入注入网络的分组数,以缓解网络出现的拥塞。

相关文章:

计算机网络 TCP协议的流量控制

流量控制的功能就是让发送方的发送速率不要太快,以便让接收方来的及接受,因此可以说流量控制是一个速度匹配服务,匹配发送方的发送速率和接收方的读取速率。 TCP利用滑动窗口机制来实现流量控制,滑动窗口的基本原理是&#xff0c…...

【基于HTML5的网页设计及应用】——改变文字和背景颜色

🎃个人专栏: 🐬 算法设计与分析:算法设计与分析_IT闫的博客-CSDN博客 🐳Java基础:Java基础_IT闫的博客-CSDN博客 🐋c语言:c语言_IT闫的博客-CSDN博客 🐟MySQL&#xff1a…...

面向对象编程第三式: 多态 (Java篇)

本篇会加入个人的所谓‘鱼式疯言’ ❤️❤️❤️鱼式疯言:❤️❤️❤️此疯言非彼疯言 而是理解过并总结出来通俗易懂的大白话, 小编会尽可能的在每个概念后插入鱼式疯言,帮助大家理解的. 🤭🤭🤭可能说的不是那么严谨.但小编初心是能让更多人…...

[数据集][目标检测]草莓成熟度检测数据集VOC+YOLO格式412张3类别

数据集格式:Pascal VOC格式YOLO格式(不包含分割路径的txt文件,仅仅包含jpg图片以及对应的VOC格式xml文件和yolo格式txt文件) 图片数量(jpg文件个数):412 标注数量(xml文件个数):412 标注数量(txt文件个数):412 标注类别…...

浅谈HTTP 和 HTTPS (中间人问题)

前言 由于之前的文章已经介绍过了HTTP , 这篇文章介绍 HTTPS 相对于 HTTP 做出的改进 开门见山: HTTPS 是对 HTTP 的加强版 主要是对一些关键信息 进行了加密 一.两种加密方式 1.对称加密 公钥 明文 密文 密文 公钥 明文 2.非对称加密 举个例子就好比 小区邮箱 提供一…...

JAVA八股文面经问题整理第3弹

文章目录 目录 文章目录 提问问题 问题1 问题2 问题3 问题4 问题5 问题6 问题7 问题8 问题9 问题10 问题11 问题12 问题13 问题14 问题15 问题16 问题17 问题18 写在最后 提问问题 JVM类加载机制?nginx怎么做到负载均衡?HashMap的红⿊树和扩容机制&…...

python 爬取人民新闻

基础信息获取: 要闻url:https://www.gov.cn/yaowen/liebiao/home.htm 下一页的url:https://www.gov.cn/yaowen/liebiao/home_1.htm 基础代码: import re import openpyxl import requests from lxml import etree import osdef …...

蓝桥杯刷题(九)

1.三国游戏 代码 #输入数据 nint(input()) Xlilist(map(int,input().split())) Ylilist(map(int,input().split())) Zlilist(map(int,input().split())) #分别计算X-Y-Z/Y-Z-X/Z-X-Y并排序 newXli sorted([Xli[i] - Yli[i] - Zli[i] for i in range(n)],reverseTrue) newYli …...

【NTN 卫星通信】 车辆物联网设备通过NTN和TN切换的应用场景

1 场景描述 对于有两个3GPP无线接入网服务的大面积农田和农场,物联网设备可以通过NTN和TN接入网同时受益于5G系统的双转向数据连接能力。   在这个用例中,我们有一个广域的农业自动化应用系统来控制农业车辆,例如,一个装有数百个…...

html5cssjs代码 014 布局框架

html5&css&js代码 014 布局框架 一、代码二、解释三、Bootstrap框架简介 Bootstrap 是一个流行的开源前端开发框架,它由Twitter公司(后独立为Bootstrap团队)创建并维护。Bootstrap 提供了一套现成的、响应式的用户界面组件和设计布局…...

[EFI]Lenovo Ideapad 530S-14IKB电脑 Hackintosh 黑苹果efi引导文件

硬件型号驱动情况主板 Lenovo Ideapad 530S-14IKB 处理器Intel i5 8250U✅已驱动内存8 GB DDR4 2400 MHz✅已驱动硬盘250 GB SSD M.2 PCI-E✅已驱动显卡Intel UHD Graphics 620✅已驱动声卡暂无更多详细信息✅已驱动网卡Realtek RTL8111✅已驱动无线网卡蓝牙DW1560 (BCM94352Z)…...

FFmpeg-aac、h264封装flv及时间转换

文章目录 时间概念流程api核心代码 时间概念 dts: 解码时间戳, 表示压缩帧的解码时间 pts: 显示时间戳, 表示将压缩帧解码后得到的原始帧的显示时间 时间基: time_base , 通常以ms为单位 时间戳: timestamp , 多少个时间基 真实时间:time_base * timest…...

TCP并发模型 || select || poll || epoll

TCP并发模型: 1.TCP多线程模型: 缺点: 1.创建线程会带来资源开销,能够实现的并发量比较有限 2.IO模型: 1.阻塞IO: 没有数据到来时,可以让任务挂起,节省CPU资源开销,提高系统效率 2.非阻塞IO: 程序未接收到数据时一直执行,效率很低 3…...

【开源】SpringBoot框架开发房屋出售出租系统

目录 一、摘要1.1 项目介绍1.2 项目录屏 二、功能模块2.1 房屋销售模块2.2 房屋出租模块2.3 预定意向模块2.4 交易订单模块 三、系统展示四、核心代码4.1 查询房屋求租单4.2 查询卖家的房屋求购单4.3 出租意向预定4.4 出租单支付4.5 查询买家房屋销售交易单 五、免责说明 一、摘…...

STM32的简单介绍

STM32是一种基于ARM Cortex-M内核的32位微控制器,由意法半导体公司开发和生产。STM32具有丰富的外设和功能,适用于各种应用场合,如工业控制、消费电子、物联网、人机交互等。STM32的优势包括低功耗、高性能、高可靠性、易于开发等。STM32的系…...

浏览器同源策略及跨域问题

同源策略:同源策略是一个重要的安全策略,它用于限制一个源的文档或者它加载的脚本如何能与另一个源的资源进行交互。它能帮助阻隔恶意文档,减少可能被攻击的媒介。 同源策略的作用:保护浏览器中网站的安全,限制ajax只…...

【读书笔记】知识图谱概述

1、KG定义 1.1 背景知识 人工智能分为三个层次,分别是运算智能,感知智能和认知智能。运算智能是让机器能存会算;感知智能是让机器能听会说、能看会认;认知智能是解决机器能理解会思考的问题。由于知识图谱的数据组织方式是计算机…...

用尾插的思路实现 “合并两个有序链表”

一、题目 将两个升序链表合并为一个新的 升序 链表并返回。新链表是通过拼接给定的两个链表的所有节点组成的。 示例 1: 输入:l1 [1,2,4], l2 [1,3,4] 输出:[1,1,2,3,4,4]示例 2: 输入:l1 [], l2 [] 输出&#…...

大数据 - Spark系列《十四》- spark集群部署模式

Spark系列文章: 大数据 - Spark系列《一》- 从Hadoop到Spark:大数据计算引擎的演进-CSDN博客 大数据 - Spark系列《二》- 关于Spark在Idea中的一些常用配置-CSDN博客 大数据 - Spark系列《三》- 加载各种数据源创建RDD-CSDN博客 大数据 - Spark系列《…...

考研C语言复习进阶(2)

目录 1. 字符指针 2. 指针数组 3. 数组指针 3.1 数组指针的定义 3.2 &数组名VS数组名 4. 函数指针 5. 函数指针数组 6. 指向函数指针数组的指针 7. 回调函数 8.三步辗转法 9. 指针和数组笔试题解析 10. 指针笔试题 指针的主题,我们在初级阶段的《指…...

Vue3+Element Plus+Sortable.js:构建可定制化表格拖拽配置中心

1. 为什么需要表格拖拽配置中心 后台管理系统中最常见的需求之一就是表格展示数据。但不同用户对表格的展示需求往往不同:产品经理可能更关注日期和状态字段,运营人员则更看重用户行为和转化数据。传统解决方案是开发多个固定表格页面,但这会…...

AI Agent架构实战教程(非常详细),从被动唤醒到主动守望,收藏这一篇就够了!

在LLM驱动的应用进入深水区后,开发者们发现:即便Agent再聪明,如果它只能停留在“你问我答”的被动模式,就永远无法触达“私人助理”的核心体验。 从OpenAI的ChatGPT Tasks到百度的“心响”产品、腾讯元宝定时任务,行业…...

软件测试之压力测试总结

🍅 点击文末小卡片,免费获取软件测试全套资料,资料在手,涨薪更快 一、什么是压力测试软件测试中:压力测试(Stress Test),也称为强度测试、负载测试。压力测试是模拟实际应用的软硬件…...

LongCat-Video:136亿参数开源AI视频生成模型的技术突破与实践指南

LongCat-Video:136亿参数开源AI视频生成模型的技术突破与实践指南 【免费下载链接】LongCat-Video 项目地址: https://ai.gitcode.com/hf_mirrors/meituan-longcat/LongCat-Video 在人工智能视频生成领域,长视频生成一直是技术挑战的制高点。传统…...

Windows 11硬件限制突破与系统升级完全指南

Windows 11硬件限制突破与系统升级完全指南 【免费下载链接】MediaCreationTool.bat Universal MCT wrapper script for all Windows 10/11 versions from 1507 to 21H2! 项目地址: https://gitcode.com/gh_mirrors/me/MediaCreationTool.bat 当你的电脑因TPM 2.0或CPU世…...

GLM-OCR在跨境电商中的应用:多语言商品说明书OCR→自动翻译预处理

GLM-OCR在跨境电商中的应用:多语言商品说明书OCR→自动翻译预处理 1. 项目概述与背景 跨境电商卖家经常面临一个共同难题:来自不同国家的商品说明书语言各异,手动翻译不仅耗时耗力,还容易出错。传统OCR工具虽然能识别文字&#…...

Xray漏洞扫描工具进阶实战:从配置优化到企业级部署

1. Xray工具深度调优:从基础配置到性能极限 第一次用Xray做全站扫描时,我盯着卡在63%的进度条整整两小时,直到发现是默认线程数把系统资源吃光了。这个教训让我意识到,会运行扫描和真正用好扫描工具完全是两回事。下面分享的调优方…...

dockerc故障排除终极指南:10个常见错误和解决方案清单

dockerc故障排除终极指南:10个常见错误和解决方案清单 【免费下载链接】dockerc container image to single executable compiler 项目地址: https://gitcode.com/gh_mirrors/do/dockerc dockerc作为一款container image to single executable compiler工具&…...

ai赋能centos7开发,用快马平台智能生成优化配置和部署流水线

最近在折腾CentOS7的开发环境配置,发现手动搭建Python/Java环境、调试服务编排特别耗时。后来尝试用InsCode(快马)平台的AI辅助功能,效率直接翻倍。分享下我的实践过程: 环境配置方案生成 输入"CentOS7 Python3.9Java11开发环境"后…...

Qwen2.5-0.5B-Instruct新手入门:从零到一的AI助手搭建全流程

Qwen2.5-0.5B-Instruct新手入门:从零到一的AI助手搭建全流程 1. 认识Qwen2.5-0.5B-Instruct 1.1 模型特点与优势 Qwen2.5-0.5B-Instruct是阿里开源的通义千问系列中最轻量级的指令微调版本,专为资源有限环境优化设计。这个5.08亿参数的模型虽然体积小…...