TCP习题总结
1、在采用TCP连接的数据传输阶段,如果发送端的发送窗口值由1000变为2000,那么发送端在收到一个确认之前可以发送()。
A. 2000个TCP报文段 B. 2000B C. 1000B D. 1000 个 TCP 报文
这道题考察的是TCP的基本概念,里面牵扯到两个知识点:实现TCP流量控制的机制--滑动窗口,TCP可靠传输里的确认机制。
经过前面的学习。我们知道TCP是面向字节流的,滑动窗口的基本单位就是字节,但是TCP采用的是累积确认,也就是说并不是对接收到的每一个字节都要发回确认。所以TCP采用的是对报文段的确认机制。 所以应该选B。
2、A和B之间建立了 TCP连接,A向B发送了 一个报文段,其中序号字段seq = 200,确认号字段ack = 201,数据部分有2个字节,那么在B对该报文的确认报文段中()。
A. seq = 202, ack = 200 B. seq = 201, ack = 201
C. seq = 201, ack = 202 D. seq = 202, ack = 201
这道题考察的是TCP数据传输过程,永远记住确认是对对方发送的数据的确认,并且确认号的值就是下次对方给你要发送的数据的起始序号。
所以B下次发送应该就是从201开始,注意题中还说了数据部分有2个字节,A实际给B发送的报文段里数据序号为200和201。所以B对A的确认号就不是201,应该为202。所以应该选C。
20. 在一个TCP连接中,MSS为1KB,当拥塞窗口为34KB时发生了超时事件。如果在接下来的4个RTT内报文段传输都是成功的,那么当这些报文段均得到确认后,拥塞窗口的大小是()。
A. 8KB B. 9KB C. 16KB D. 17KB
这道题考察的是TCP的拥塞控制。在34KB时发生了超时事件,于是接下来慢开始门限值变为17KB,拥塞窗口从1KB开始。
于是拥塞窗口的值变化为1,2, 4,8共4个RTT。此时注意题目说的是当这些报文段均得到确认后,也就是说相当于题目在问第五个传输轮次的拥塞窗口的大小为多少。 由于8KB未达到慢开始门限值,所以会再进行一次慢开始算法,拥塞窗口值变为16KB。所以选C。
21 .设TCP的拥塞窗口的慢开始门限值初始为8(单位为报文段),当拥塞窗口上升到12时发生超时,TCP开始慢启动和拥塞避免,那么第13次传输时拥塞窗口的大小为()。
A. 4 B. 6 C. 7 D. 8
这道题考察的是TCP的拥塞控制。
慢开始算法:1,2,4,8 共4个传输轮次。
随后进行拥塞避免算法:9,10,11,12 共4个传输轮次
到达12KB时发生了超时,慢开始门限值变为6KB,拥塞窗口值变为1。
再次进行慢开始算法:1,2,4,6共4个传输轮次。
随后进行拥塞避免算法:7 共1个传输轮次。
综上所述,第13次传输时拥塞窗口大小为7KB,选C。 这里面要注意的是不管慢开始门限值是否为2的指数级,只要拥塞窗口的值与其相等了就变成拥塞避免。
22. 在一个TCP连接中,MSS为1KB,当拥塞窗口为34KB时收到了3个冗余ACK报文。 如果在接下来的4个RTT内报文段传输都是成功的,那么当这些报文段均得到确认后, 拥塞窗口的大小是()。 A. 8KB B. 16KB C. 20KB D. 21KB
这道题和20题的区别在于,拥塞窗口值为34KB时收到的是3个ACK报文而不是发生超时重传,即接下来应该先启动快重传和快恢复算法。将拥塞窗口的值和慢开始门限的值都变为当前拥塞窗口值的一半。所以第一个RTT的拥塞窗口值为17。
则接下来的4个RTT内拥塞窗口的值变化为17, 18, 19,20。同样是收到确认后,所以答案为D。
24.假设在没有发生拥塞的情况下,在一条往返时延RTT为10ms的线路上采用慢开始控制策略。如果接收窗口的大小为24KB, 最大报文段MSS为2KB。那么发送方能发送出第一个完全窗口(也就是发送窗口达到24KB)需要的时间是()。 A. 30ms B. 40ms C. 50ms D. 60ms
注意题中说最大报文段MSS为2KB。所以拥塞窗口值从2开始,
则拥塞窗口的值变化为:2, 4,8, 16,24。由此可见经过了4个RTT,在第5个RTT时就已经可以发送完全窗口,所以需要的时间只算前4个,则答案选B。
28. [2010统考真题】主机甲和主机乙之间已建立一个TCP连接,TCP最大段长为1000B。 若主机甲的当前拥塞窗口为4000B,在主机甲向主机乙连续发送两个最大段后,成功收到主机乙发送的第一个段的确认段,确认段中通告的接收窗口大小为2000B,则此时主机甲还可以向主机乙发送的最大字节数是()。 A. 1000 B. 2000 C. 3000 D. 4000
这道题仍然考察的是TCP的流量控制,实际在之前总结TCP的流量控制的时候的习题和这道题是一样的。
首先需清楚发送窗口的值是拥塞窗口和接收窗口两者中值小的那一个,从题中可以看出在接收到一个确认报文段后,主机甲的发送窗口变为了2000B。此时窗口内前1000B就是前面发送的第二个报文段,该报文段未收到确认,所以不进行重发,所以此时主机甲可以向乙发送的是新落在发送窗口内的1000B。则答案选A。
32.主机甲和乙建立了 TCP连接,甲始终以MSS = 1KB大小的段发送数据,并一直有数据发送;乙每收到一个数据段都会发出一个接收窗口为10KB的确认段。 若甲在t时刻发生超时的时候拥塞窗口为8KB,则从t时刻起,不再发生超时的情况下, 经过10个RTT后,甲的发送窗口是()。
A. 10KB B. 12KB C. 14KB D. 15KB
t时刻发生了超时,那么接下来的第一个RTT内拥塞窗口的值应该为1,随后一直到第十个RTT内拥塞窗口的值变化为2,4,5,6,7,8,9,10,11。因为是经过十个RTT后,所以此时拥塞窗口的值应该为12,但是接收窗口的值始终为10,所以发送窗口取最小值,选A。
37. 【2020统考真题】若主机甲与主机乙已建立一条TCP连接,最大段长(MSS)为1KB, 往返时间(RTT)为2ms,则在不出现拥塞的前提下,拥塞窗口从8KB增长到32KB所需的最长时间是()。 A. 4ms B. 8ms C. 24ms D. 48ms
注意题中说的是所需的最长时间,在不触发拥塞的情况下那么就应该是拥塞窗口的值全程线性增长,所以时间为(32-8)×2=48。所以选D。
相关文章:
TCP习题总结
1、在采用TCP连接的数据传输阶段,如果发送端的发送窗口值由1000变为2000,那么发送端在收到一个确认之前可以发送()。 A. 2000个TCP报文段 B. 2000B C. 1000B D. 1000 个 TCP 报文 这道题考察的是TCP的基本…...
华为发布LampSite X室内数字化创新解决方案,释放数字世界无限潜能
【阿联酋,迪拜,2023年10月11日】2023全球移动宽带论坛(Global MBB Forum 2022)期间,华为董事、ICT产品与解决方案总裁杨超斌重磅发布了全新一代5G室内数字化产品解决方案LampSite X系列,助力运营商打开商业…...
麒麟操作系统设置QT程序开机自启动有效方法
在麒麟操作系统上设置QT程序开机自启动的两种简单有效的方法。支持请点赞! 一、QT程序打包 1.设置环境变量 设置QT和linuxdeployqt的环境变量,已设置可忽略该步骤。 在/etc/profile文件末尾添加一下内容: export PATH/usr/local/Qt-5.15.…...
Python数组删除元素pop与remove对比
pop()和remove()函数都可以用来删除列表中的函数,pop()是按索引来删除的,remove()是按元素来删除的。 1、pop()默认删除列表中最后一个元素,而且会返回删除的元素。此时的时间复杂度为O(1) 下面的例子中,…...
【Java 进阶篇】Java Web 编写注册页面案例
当涉及到创建一个Java Web注册页面时,你将需要涵盖很多不同的主题,包括HTML、CSS、Java Servlet和数据库连接。在这篇文章中,我们将详细介绍每个步骤,以帮助你创建一个完整的注册页面。 1. 介绍 注册页面是许多Web应用程序的关键…...
7.5 SpringBoot 拦截器Interceptor实战 统一角色权限校验
前言 在【7.1】管理员图书录入和修改API,当时预告过:并没有写【校验是否是管理员】的逻辑,因为是通用逻辑,会单写一篇来细讲,那么今天就来安排! 角色权限校验,是保证接口安全必备的能力:有权限才可以操作!所以,一般对于这种通用逻辑,推荐不与主业务逻辑耦合,那么…...
【原创】ubuntu18修改IP地址
打开网络配置文件 sudo vi /etc/network/interfaces结果发现如下内容: # ifupdown has been replaced by netplan(5) on this system. See # /etc/netplan for current configuration. # To re-enable ifupdown on this system, you can run: # sudo apt inst…...
Vue-2.4sync修饰符
作用:可以实现子组件与父组件数据的双向绑定,简化代码 特点:prop属性名,可以自定义,非固定为value 场景:封装弹框类的基础组件,visible属性 true显示 false隐藏 本质:就是:属性名…...
【RealTek sdk-3.4.14b】RTL8197FH-VG+RTL8367+RTL8812F WiFi to LAN 和WiFi to WAN吞吐量
LAN <----------> 2.4G WiFi Throughput 天线频宽模式协议连接速率TX(Mbps)RX(Mbps)TX&RX(Mbps)2X240MHz802.11nTCP300Mbps2051922112X240MHz802.11nUDP300Mbps224234231 LAN <----------> 5G WiFi Throughput 天线频宽模式协议连接速率TX(Mbps)RX(Mbps)TX&…...
vue 本地上传Excel文件并读取内容
陌路遇见,陌路告别,陌路问好,九月再见,十月重现! 首先我来讲解一下我的思路: 首先,在模板部分,我们有以下元素: <input type“file” change“handleFileUpload” accept“.xlsx…...
京东商品品牌数据采集接口,京东商品详情数据接口,京东API接口
采集京东商品品牌数据的方法如下: 打开网页。在首页【输入框】中输入目标网址批量输入多个关键词并搜索。创建【循环列表】,采集所有商品列表中的数据。编辑字段。创建【循环翻页】,采集多页数据。设置滚动和修改【循环翻页】XPath。启动采集…...
电脑提示Explorer.exe系统错误该怎么办?
平时我们在使用电脑时,系统有时会提示Explorer.exe系统错误,很多用户在遇到这类问题时不知道该怎么办。遇到Explorer.exe系统错误,该怎么办呢?下面我们一起来了解一下。 怎么修复Explorer.exe系统错误? Explorer.exe是…...
Java架构师部署架构设计
目录 1 导学2 部署架构设计和部署架构图2.1 服务器数量和配置2.2 服务器软件配置2.3 网络环境设计2.4 部署架构图2.5 部署说明文档2.6 部署清单2.7 画部署架构图3 实战整体部署架构设计4 节点部署说明列表5 总结1 导学 本章的主要内容是整体架构设计的核心之一,部署架构设计相…...
ubuntu 22.04.3 live server图文安装流程
备注:以下操作全用键盘,tab切换,enter确认,方向键移动; 1、 选择安装,第一个; 2、选择语言,这里只能选择英语,无中文; 3、继续而不更新 4、键盘,…...
基于SVM+TensorFlow+Django的酒店评论打分智能推荐系统——机器学习算法应用(含python工程源码)+数据集+模型(一)
目录 前言总体设计系统整体结构图系统流程图 运行环境Python环境TensorFlow 环境方法一方法二 安装其他模块安装MySQL 数据库 模块实现1. 数据预处理1)数据整合2)文本清洗3)文本分词 相关其它博客工程源代码下载其它资料下载 前言 本项目以支…...
Elasticsearch 分片内部原理—近实时搜索、持久化变更
目录 一、近实时搜索 refresh API 二、持久化变更 flush API 一、近实时搜索 随着按段(per-segment)搜索的发展,一个新的文档从索引到可被搜索的延迟显著降低了。新文档在几分钟之内即可被检索,但这样还是不够快。 磁盘在这…...
华为OD机试 - 用连续自然数之和来表达整数 - 滑动窗口(Java 2023 B卷 100分)
目录 专栏导读一、题目描述二、输入描述三、输出描述四、解题思路五、Java算法源码六、效果展示1、输入2、输出 华为OD机试 2023B卷题库疯狂收录中,刷题点这里 专栏导读 本专栏收录于《华为OD机试(JAVA)真题(A卷B卷)》…...
玩转ChatGPT:图像识别(vol. 1)
一、写在前面 来了来了,终于给我的账号开放图像识别功能了,话不多说,直接开测!!! 二、开始尝鲜 (1)咒语: GPT回复: 这幅图显示了从2005年1月到2012年12月的…...
oracle 数据库实验三
(1)向 ORCL数据库添加一个重做日志文件组(组号为5),包含一个成员文件d:\redo05a.log,大小为4MB ; 要向Oracle数据库添加一个重做日志文件组,您可以执行以下步骤: 连接到数据库&…...
多线程并发篇---第五篇
系列文章目录 文章目录 系列文章目录一、什么是线程安全二、Thread类中的yield方法有什么作用?三、Java线程池中submit() 和 execute()方法有什么区别?一、什么是线程安全 线程安全就是说多线程访问同一段代码,不会产生不确定的结果。 又是一个理论的问题,各式各样的答案有…...
uni-app学习笔记二十二---使用vite.config.js全局导入常用依赖
在前面的练习中,每个页面需要使用ref,onShow等生命周期钩子函数时都需要像下面这样导入 import {onMounted, ref} from "vue" 如果不想每个页面都导入,需要使用node.js命令npm安装unplugin-auto-import npm install unplugin-au…...
Cilium动手实验室: 精通之旅---20.Isovalent Enterprise for Cilium: Zero Trust Visibility
Cilium动手实验室: 精通之旅---20.Isovalent Enterprise for Cilium: Zero Trust Visibility 1. 实验室环境1.1 实验室环境1.2 小测试 2. The Endor System2.1 部署应用2.2 检查现有策略 3. Cilium 策略实体3.1 创建 allow-all 网络策略3.2 在 Hubble CLI 中验证网络策略源3.3 …...
vue3 定时器-定义全局方法 vue+ts
1.创建ts文件 路径:src/utils/timer.ts 完整代码: import { onUnmounted } from vuetype TimerCallback (...args: any[]) > voidexport function useGlobalTimer() {const timers: Map<number, NodeJS.Timeout> new Map()// 创建定时器con…...
前端开发面试题总结-JavaScript篇(一)
文章目录 JavaScript高频问答一、作用域与闭包1.什么是闭包(Closure)?闭包有什么应用场景和潜在问题?2.解释 JavaScript 的作用域链(Scope Chain) 二、原型与继承3.原型链是什么?如何实现继承&a…...
(转)什么是DockerCompose?它有什么作用?
一、什么是DockerCompose? DockerCompose可以基于Compose文件帮我们快速的部署分布式应用,而无需手动一个个创建和运行容器。 Compose文件是一个文本文件,通过指令定义集群中的每个容器如何运行。 DockerCompose就是把DockerFile转换成指令去运行。 …...
在WSL2的Ubuntu镜像中安装Docker
Docker官网链接: https://docs.docker.com/engine/install/ubuntu/ 1、运行以下命令卸载所有冲突的软件包: for pkg in docker.io docker-doc docker-compose docker-compose-v2 podman-docker containerd runc; do sudo apt-get remove $pkg; done2、设置Docker…...
tree 树组件大数据卡顿问题优化
问题背景 项目中有用到树组件用来做文件目录,但是由于这个树组件的节点越来越多,导致页面在滚动这个树组件的时候浏览器就很容易卡死。这种问题基本上都是因为dom节点太多,导致的浏览器卡顿,这里很明显就需要用到虚拟列表的技术&…...
Mac下Android Studio扫描根目录卡死问题记录
环境信息 操作系统: macOS 15.5 (Apple M2芯片)Android Studio版本: Meerkat Feature Drop | 2024.3.2 Patch 1 (Build #AI-243.26053.27.2432.13536105, 2025年5月22日构建) 问题现象 在项目开发过程中,提示一个依赖外部头文件的cpp源文件需要同步,点…...
安宝特方案丨船舶智造的“AR+AI+作业标准化管理解决方案”(装配)
船舶制造装配管理现状:装配工作依赖人工经验,装配工人凭借长期实践积累的操作技巧完成零部件组装。企业通常制定了装配作业指导书,但在实际执行中,工人对指导书的理解和遵循程度参差不齐。 船舶装配过程中的挑战与需求 挑战 (1…...
【C++特殊工具与技术】优化内存分配(一):C++中的内存分配
目录 一、C 内存的基本概念 1.1 内存的物理与逻辑结构 1.2 C 程序的内存区域划分 二、栈内存分配 2.1 栈内存的特点 2.2 栈内存分配示例 三、堆内存分配 3.1 new和delete操作符 4.2 内存泄漏与悬空指针问题 4.3 new和delete的重载 四、智能指针…...
