运输层知识点总结4

目录

前言

一、在TCP的拥塞控制中,什么是慢开始,拥塞避免,快重传和快恢复算法?这里每一种算法各起什么作用?“乘法减小”和“加法增大”各用在什么情况下

二、TCP在进行流量控制时候,以分组的丢失作为产生拥塞的标志。有没有不是因拥塞而引起分组丢失的情况,如有,请举出三种情况。

三、解释为什么突然释放运输连接就可能会丢失用户数据,而TCP的连接释放方法可以保证不丢失数据

四、UDP和IP的不可靠程度是否相同?请加以解释。

五、UDP用户数据报的最小长度是多少?用最小长度的UDP用户数据报构成的最短IP数据报的长度是多少。

总结


前言

有时候世界虽然是假的,但并不缺少真心对待我们的人


一、在TCP的拥塞控制中,什么是慢开始,拥塞避免,快重传和快恢复算法?这里每一种算法各起什么作用?“乘法减小”和“加法增大”各用在什么情况下

        慢开始算法的思路是这样的:当主机发送数据时,如果立即把大量数据字节注入网络,那么就有可能引起网络拥塞,因为现在并不清楚网络的负荷情况。经验证明,较好的方法是检测一下,就是从小到大逐渐增大发送窗口,也就是说,由小到大逐渐增大拥塞窗口数值。通常在刚刚开始发送报文段的确认后,把拥塞窗口cwnd设置一个最大报文段MSS的数值。而在每收到一个对新的报文段的确认后,把拥塞窗口增加到至多一个MSS的数值。用这样的方法逐步增大发送方的拥塞窗口cwnd,可以使分组注入网络的速率更加合理。使用慢开始算法后,每经过一个RTT,拥塞窗口cwnd就加倍。

        为了防止拥塞窗口cwnd增长过大引起网络拥塞,还需要设置一个慢开始门限ssthresh状态变量。当cwnd>ssthresh时,停止使用慢开始算法而改用拥塞避免算法。

        拥塞避免算法的思路是让拥塞窗口cwnd缓慢地增大,就是每经过一个往返时间RTT就把发送方的拥塞窗口cwnd加1,而不是加倍。这样,拥塞窗口cwnd按照线性规律缓慢增长,比慢开始算法的拥塞窗口增长速率缓慢很多

        快重传算法首先要求接收方每收到一个失序的报文段后,就立即发出重复确认,而不要等待自己发送数据时才开始捎带确认

        快恢复算法,其过程有以下两个要点:

     (1)当发送方连续收到三个重复确认时,就执行“乘法减小”算法,把慢开始门限ssthresh减半。这是为了预防网络发生拥塞。请注意,接下来不执行慢开始算法

     (2)由于发送方现在认为网络很可能没发生拥塞,因此不执行慢开始算法,而是把cwnd值设定位慢开始门限ssthresh减半后的数值,然后开始执行拥塞避免算法,使拥塞窗口缓缓地线性增大

        “乘法减小”是不论在慢开始阶段还是拥塞避免阶段,只要出现超时(即很可能出现了网络拥塞,)就把满开始门限值ssthresh减半,即设置为当前拥塞窗口的一半(与此同时,执行满开始算法)。当网络频繁出现拥塞时,ssthresh值就下降的很快,以大大减少注入到网络中的分组数。

        加法增大 是指执行拥塞避免算法后,使拥塞窗口缓缓增大,以防网络过早出现拥塞

二、TCP在进行流量控制时候,以分组的丢失作为产生拥塞的标志。有没有不是因拥塞而引起分组丢失的情况,如有,请举出三种情况。

        不是因拥塞而引起分组丢失的情况还是有的,举例如下。

        第一种情况:当IP数据报在传输过程中需要分片时,但其中的一个数据报片未能及时到达重终点组装IP数据报已经超时,因而只能丢弃该数据报。

        第二种情况:IP数据报已经到达终点,但终点的缓存没有足够的空间存放该数据报。

        第三种情况:数据报在转发过程中经过一个局域网的网桥,但网桥在转发该数据报的帧时没有足够的存储空间只好丢弃

三、解释为什么突然释放运输连接就可能会丢失用户数据,而TCP的连接释放方法可以保证不丢失数据

        我们假定A和B之间建立了TCP连接,并且已经交换了一些数据。

        现在A应当发送的数据都已经发送完毕了。如果A现在突然把TCP连接释放掉,那么有可能出现这种情况:A发送到B的某些报文段正在网络中传送,但因某些原因,报文段丢失了,A以为B应当收到A所发送的全部报文段,但事实上,有些报文段B没有收到。这就是题目所说的“可能会丢失用户数据”。

      我们再假定:A已经收到了来自B的确认,B向A确认已经收到了A所发送的全部数据。如果A现在突然把TCP连接释放掉,那么A发送给B的数据是不可能丢失了,因为B已经确认收到了A发送的全部数据。现在可能会丢失的是B要向A发送一些数据(如果B还有这样的数据),因为TCP连接突然释放了

        因此,必须保证TCP的连接释放,这样就可以保证不丢失数据

四、UDP和IP的不可靠程度是否相同?请加以解释。

          UDP和IP都是无连接的协议和不可靠传输的协议,UDP用户数据报和IP数据报的首部都有检验和字段。当检验出差错时,就把收到的UDP用户数据报或IP数据报丢弃,这就是他们的相同之处

        但UDP和IP的可靠性是有些区别的。UDP用户数据报的检验和既检验UDP用户数据报的首部又检验整个的UDP用户数据报的数据部分,而IP数据报的检验和仅仅检验IP数据报的首部。UDP用户数据报的检验和还增加了伪首部,即还检验了下面的IP数据报的源IP地址和目的IP地址

五、UDP用户数据报的最小长度是多少?用最小长度的UDP用户数据报构成的最短IP数据报的长度是多少。

        UDP用户数据报的最小长度是8字节,即仅有首部而没有数据。用最小长度的UDP用户数据报构成的最短IP数据报的长度是28字节。此IP数据报具有20字节的固定首部,首部没有可选字段

总结

总结了运输层的一些知识点

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

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

银河麒麟V10通过tigervnc实现远程桌面和windows系统连接

1、查看系统版本:uname -a Linux localhost.localdomain 4.19.90-89.16.v2401.ky10.x86_64 #1 SMP Sat Sep 14 13:09:47 CST 2024 x86_64 x86_64 x86_64 GNU/Linux 2、查看是否具有桌面环境:yum grouplist 安装VNC需要具有桌面环境 3.、安装tigervnc: yum install tigervnc…

Linux基础命令(五) 之 cat,head,tail,more,less,grep

目录 一,浏览普通文件内容 二,过滤文件内容显示--grep 参数及其作用 ​编辑 常见用法 一,浏览普通文件内容 注意:以上命令均可以结合管道符一起使用 二,过滤文件内容显示--grep 在指定的普通文件中查找并显示含有…

vue写个表格,让它滚动起来,没有用datav,有的时候结合会出错,一种简单的方法,直接用animation

表格样式就先不说了哈,这些简单内容,如果粉丝朋友还有什么问题,可以私信 好啦,首先,第一步 1.在目录的这个地方创建文件夹css,里面放两个文件 . 第一个文件里面内容 第二个文件里面内容 .drawCur{ curs…

VR在线展厅重塑展览新维度,引领沉浸式科技体验与漫游新时代

一、VR在线展厅开启数字展览新篇章 VR在线展厅将传统的实体展览空间转化为数字化的虚拟环境。参观用户只需使用手机、平板、电脑等设备就能瞬间穿越至虚拟展厅中,身临其境地浏览各类展品。这种前所未有的科技体验不仅让参观者感受到了数字技术的魅力,更极…

JS实现警灯效果红蓝闪烁

代码&#xff1a; <!DOCTYPE html> <html lang"zh-CN"> <head><meta charset"UTF-8"><meta name"viewport" content"widthdevice-width, initial-scale1.0"><title>警灯效果红蓝闪烁</title&…

【WiFi7】 支持wifi7的手机

数据来源 Smartphones with WiFi 7 - list of all latest phones 2024 Motorola Moto X50 Ultra 6.7" 1220x2712 Snapdragon 8s Gen 3 16GB RAM 1024 GB 4500 mAh a/b/g/n/ac/6e/7 Sony Xperia 1 VI 6.5" 1080x2340 Snapdragon 8 Gen 3 12GB RAM 512 G…

web服务实验

http实验 先创建需要访问的web页面文件index.html 编辑vim /etc/nginx/conf.d/testip.conf 测试通过域名访问需要编辑/etc/hosts 如果通过windows的浏览器访问需要编辑下面的文件通过一管理员身份打开的记事本编辑 C:\Windows\System32\drivers\etc下的hosts文件 192.168.1…

Kubernetes运行大数据组件-设计思路

环境说明 在Kubernetes集群添加三个节点作为大数据测试服务节点&#xff1a; NAME STATUS ROLES AGE VERSION bigdata199056 Ready worker 2d3h v1.20.6 bigdata199057 Ready worker 2d5h v1.20.6 bigdata199058 Ready work…

Maven的依赖

一、依赖的基本配置 根元素project下的dependencies可以包含多个 dependence元素&#xff0c;以声明多个依赖。每个依赖都应 该包含以下元素&#xff1a; 1. groupId, artifactId, version : 依赖的基本坐标&#xff0c; 对于任何⼀个依赖来说&#xff0c;基本坐标是最…

前端聊天室页面开发(赛博朋克科技风,内含源码)

肝了一天&#xff0c;经过各种处理美化&#xff0c;肝出来了一个赛博朋克科技风的前端页面&#xff0c;用的原生三件套htmlcssjavascript开发的&#xff0c;本来想是加点功能调用一下gpt接口&#xff0c;但是基本都需要webscoket通信&#xff0c;可惜我js学的不是很深入&#x…

使用Vue.js构建响应式Web应用

&#x1f496; 博客主页&#xff1a;瑕疵的CSDN主页 &#x1f4bb; Gitee主页&#xff1a;瑕疵的gitee主页 &#x1f680; 文章专栏&#xff1a;《热点资讯》 使用Vue.js构建响应式Web应用 1 引言 2 Vue.js简介 3 安装Vue CLI 4 创建Vue项目 5 设计应用结构 6 创建组件 7 使用…

C++——string的模拟实现(下)

目录 成员函数 3.4 修改操作 (3)insert()函数 (4)pop_back()函数 (5)erase()函数 (6)swap()函数 3.5 查找操作 (1)find()函数 (2)substr()函数 3.6 重载函数 (1)operator赋值函数 (2)其他比较函数 (3)流插入和流提取 完整代码 结束语 第一篇链接&#xff1a;C——…

基于Springboot无人驾驶车辆路径规划系统(源码+定制+开发)

博主介绍&#xff1a; ✌我是阿龙&#xff0c;一名专注于Java技术领域的程序员&#xff0c;全网拥有10W粉丝。作为CSDN特邀作者、博客专家、新星计划导师&#xff0c;我在计算机毕业设计开发方面积累了丰富的经验。同时&#xff0c;我也是掘金、华为云、阿里云、InfoQ等平台…

【大模型】Ollama+WebUI+AnythingLLM搭建本地知识库

目录 1 部署Ollama 1.1 下载镜像ollama 1.2 运行ollama 1.3 验证 2 模型选型 3 安装模型 3.1 选择模型安装 3.2 删除模型(选看) 4 安装webUI 4.1 拉镜像 4.2 启动服务 5 访问 5.1 注册 5.2 登录 5.3 设置 6 使用 7 使用api来调用 8 安装AnythingLLM搭建本地…

27.9 调用go-ansible执行playbook拷贝json文件重载采集器

本节重点介绍 : go-ansible执行playbook编写分发重载的playbook编译执行 测试停掉一个节点测试停掉的节点再回来 go-ansible执行playbook 新增 goansiblerun/run.go package goansiblerunimport ("context""github.com/apenella/go-ansible/pkg/execute&qu…

Python基础学习(四)程序控制结构

代码获取&#xff1a;https://github.com/qingxuly/hsp_python_course 完结版&#xff1a;Python基础学习完结版 程序控制结构 程序流程控制介绍 基本介绍 程序流程控制绝对程序是如何执行的&#xff0c;是我们必须掌握的&#xff0c;主要有三大流程控制语句。顺序控制、分支…

Linux中DHCP服务器配置和管理

文章目录 一、DHCP服务1.1、DHCP的工作流程1.2、DHCP的工作模式1.3、dhcp的主要配置文件 二、安装DHCP服务2.1、更新yum源2.2、安装DHCP服务软件包2.3、配置DHCP服务2.4、启用DHCP服务&#xff08;解决报错&#xff09;2.4.1、查看dhcpd服务的状态和最近的日志条目2.4.2、查看与…

js构造函数和原型对象,ES6中的class,四种继承方式

一、构造函数 1.构造函数是一种特殊的函数&#xff0c;主要用来初始化对象 2.使用场景 常见的{...}语法允许创建一个对象。可以通过构造函数来快速创建多个类似的对象。 const Peppa {name: 佩奇,age: 6,sex: 女}const George {name: 乔治,age: 3,sex: 男}const Mum {nam…

【react 和 vue】 ---- 实现组件的递归渲染

1. 需求场景 今天遇到了一个需求&#xff0c;就是 HTML 的递归渲染。问题就是商品的可用时间&#xff0c;使用规则等数据是后端配置&#xff0c;然后配置规则则是可以无限递归的往下配置&#xff0c;可以存在很多级。后端实现后&#xff0c;数据返回前端&#xff0c;就需要前端…

【mysql 进阶】2-1. MySQL 服务器介绍

MySQL 服务器简介 通常所说的 MySQL 服务器指的是mysqld程序&#xff0c;当运⾏mysqld后对外提供MySQL 服务&#xff0c;这个专题的内容涵盖了以下关于MySQL 服务器以及相关配置的内容&#xff0c;包括&#xff1a; 服务器⽀持的启动选项。可以在命令⾏和配置⽂件中指定这些选…