计算机网络-第5章 运输层(2)

news2024/11/16 6:04:33

5.6 TCP可靠传输实现

以字节为单位的滑动窗口。

发送窗口已满,停止发送。

发送和接收的数据都来自缓存。

超时重传时间RTO选择:自适应算法,

选择确认SACK:只传送缺少的数据。大多数实现还是重传所有未被确认的数据块。

5.7 TCP的流量控制

流量控制,让发送方的发送速率不要太快,让接收方来得及接收。A向B发送数据时,B告诉A它的接收窗口。发送方的发送窗口不能超过接收窗口的数值。

TCP为每一个连接设定一个持续计时器,TCP连接的一方收到对方的零窗口通知,启动计时器,时间到后就发送一个零窗口探测报文段。

TCP传输效率,TCP报文段的发送时机三种机制:

Nagle算法:

5.8 TCP的拥塞控制

计算机的链路容量(即带宽)、交换结点中的缓存和处理机等,都是网络的资源。若网络中的某一资源超的需求,超过了该资源提供的可用部分,网络性能变坏,此情况叫拥塞。

拥塞控制,防止过多的数据注入到网络中,可以使网络中的路由器或链路不致过载。

流量控制是指点对点通信量的控制。

拥塞控制方法:慢开始、拥塞避免、快重传、快恢复。

慢开始:由小到大逐渐增大发送窗口,即增大拥塞窗口数值。

拥塞避免:每经过一个往返时间RTT就把发送方的拥塞窗口cwnd加1,慢开始阶段加倍增加。

快重传:

快恢复:

AIMD算法:

主动队列管理:

为避免网络中的全局同步现象,98年提出主动队列管理AQM。实现方法有:随机早期检测RED。

5.9 TCP运输连接管理

运输连接三阶段:连接建立、数据传送、连接释放。发起连接的应用进程为客户、被动等待连接建立的应用进程为服务器。

TCP连接建立的三个问题:

建立连接的过程为握手,通过三报文握手建立TCP连接。

TCP连接释放:

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

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

相关文章

sheng的学习笔记- AI-类别不平衡问题

目录:sheng的学习笔记-AI目录-CSDN博客 什么是类别不平衡问题 类别不平衡(class-imbalance),也叫数据倾斜,数据不平衡,就是指分类任务中不同类别的训练样例数目差别很大的情况。 例如有998个反例&#xf…

C 嵌入式系统设计模式 24:安全性和可靠性介绍

本书的原著为:《Design Patterns for Embedded Systems in C ——An Embedded Software Engineering Toolkit 》,讲解的是嵌入式系统设计模式,是一本不可多得的好书。 本系列描述我对书中内容的理解。本文章描述嵌入式安全性和可靠性模式之一…

ERP实施顾问面试题目

02什么是BOM和ECN?它们的完整英文拼写是什么?什么是替代料?(10分) BOM物料清单是英文Bill of Material的简写;ECN工程变更通知单是英文Engineering Change Notice的简写;替代料:由于…

vscode中解决驱动编写的时候static int __init chrdev_init()报错的问题

目录 错误出错原因解决方法 错误 在入口函数上,出现 expected a ; 这样的提示 出错原因 缺少了 __KERNEL __ 宏定义 解决方法 补上__KERNEL__宏定义 具体做法:在vscode中按下ctrlshiftp ,输入:C/C:Edit Configurations&#xff0…

JMM(Java Memory Model)内存模型

Java内存模型,规范了计算机内存与java虚拟机之间的协调工作,即规定了 将java 虚拟机中的变量存储到内存中和从内从中取出来的内存细节。 Java内存模型中规定了所有的变量都存储在内存中,每条线程还有自己的工作内存,线程对变量的…

Exception异常处理

1. 两种异常处理机制 1.1 使用 throw 关键字手动抛出异常 使用throw关键字抛出异常,代码会的显得简单明了 如下图所示 1.2 使用 try-catch 捕获异常 使用try-catch进行捕获异常,往往会使代码变得更加笼统,层层包裹 如下图所示 2. 自定义…

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

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

【pycharm使用ssh连接服务器】

2、pycharm使用ssh连接服务器 1、具体流程2、一些需要注意的小问题2.1 更改代码地址2.2 本地代码上传到服务器2.3 在服务器的环境中上新安装库,但是pycharm检测不到 1、具体流程 打开pycharm – File – Setting 输入服务器的IP地址,端口号、登录账号名…

qt如何配置ros环境

在Qt5.7的版本可以使用bash -i -c来启动qt,让Qt自己识别系统环境,不知道为什么Qt在之后的版本,这样使用都失效了。因为它会默认把CMAKE_PREFIX_PATH修改掉。 网上还有安装ros插件版本的qt creator,感觉失去了一些灵活性。 自己测试…

连接端口和连接端口转换OrCAD补丁

来介绍此功能之前先复习一下一些OrCAD的基础知识。 说到连通两个器件,有什么办法呢?最直接的就是用线连通。比如下面这两个器件需要连通,我们可以直接用线Place wire连接。 但是如果这两个器件由于某些原因,他们之间相隔很远&…

Milvus的相似度指标

官网:https://milvus.io/docs/metric.md版本: v2.3.x 在 Milvus 中,相似度度量用于衡量向量之间的相似度。选择良好的距离度量有助于显着提高分类和聚类性能。下表展示了这些广泛使用的相似性指标如何与各种输入数据形式和 Milvus 索引相匹配。 一、浮…

大语言模型:Large Language Models Are Human-Level Prompt Engineers概述

研究内容 如何通过prompt,在不进行微调大语言模型的前提下,增加大语言模型的表现 研究动机 prompt非常有用,但是人工设置的非常不自然;因此提出了要自动使用大语言模型自己选择prompt;取得了很好的效果。 作者主要…

java异常概述及自定义处理

前言 学到异常了,本来以为处理异常只是避免bug,结果发现还可以为了编程需要自定义异常。打好基础,daydayup! 异常 什么是异常 异常就是代表程序出现的问题 异常的体系 异常体系指的是java开发人员为了方便程序员使用所开发的异常类&#xff…

一文彻底搞懂MySQL建表规范

文章目录 1. 表设计规范2. 索引规范3. SQL语句规范4. 散表规范 1. 表设计规范 库名、表名、字段名使用小写字母,使用“_”分割,不超过12个字符。使用InnoDB存储引擎。存储精确浮点数使用DECIMAL替代FLOAT和DOUBLE。使用UNSIGNED存储非负数值&#xff0c…

Linux基础学习:常用命令

目录结构及其常用命令 处理目录的常用命令: ls :列出目录及文件名cd:切换目录pwd:显示目前的目录mkdir:创建一个新的目录rmdir:删除一个空的目录cp:复制文件或目录rm:删除文件或目录…

Redis核心数据结构之字典(一)

字典 概述 字典又称为符号表(symbol table)、关联数组(associative array)或映射(map),是一种保存键值对(key-value pair)的抽象数据结构,在字典中,一个键(key)可以和一个值(value)进行关联(或者说将键映射为值),这些关联的键和…

Unity类银河恶魔城学习记录9-1 9-2 P89,90 Character stats - Stat script源代码

Alex教程每一P的教程原代码加上我自己的理解初步理解写的注释,可供学习Alex教程的人参考 此代码仅为较上一P有所改变的代码 【Unity教程】从0编程制作类银河恶魔城游戏_哔哩哔哩_bilibili Stat.cs using System.Collections; using System.Collections.Generic; us…

SSM整合项目(删除家居 + 分页查询)

1.删除家居 1.需求分析 2.编写Service层 1.FurnService.java 添加方法 //删除家居public void del(Integer id);2.FurnServiceImpl.java 实现方法 Overridepublic void del(Integer id) {furnMapper.deleteByPrimaryKey(id);}3.单元测试 Testpublic void del() {furnService.…

超越 Siri 和 Alexa:探索LLM(大型语言模型)的世界

揭秘LLM:语言模型新革命,智能交互的未来趋势 近年来,虚拟助手的世界发生了重大转变。 虽然 Siri 和 Alexa 本身就是革命性的,但一种称为大型语言模型 (LLM) 的新型人工智能正在将虚拟助手的概念提升到一个全新的水平。 在这篇博文…

面试官:线程调用2次start会怎样?我支支吾吾没答上来

写在开头 在写完上一篇文章《Java面试必考题之线程的生命周期,结合源码,透彻讲解!》后,本以为这个小知识点就总结完了。 但刚刚吃晚饭时,突然想到了多年前自己面试时的亲身经历,决定再回来补充一个小知识点&#xff…