传输层协议TCP、UDP

传输层协议TCP、UDP

1、TCP和UDP报文格式

传输层协议TCPvsUDP

  • 传输层主要两个传输协议,分别是TCP和UDP,负责提供流量控制、排序服务和错误校验
    • (1)TCP是面向连接的,一般用于传输数据量比较少,且对可靠性要求高的应用。【文件
    • (2)UDP是一种不可靠的、无连接的协议。用于传输数据量大,可靠性要求不高,但要求速度快的场景。【音视频

1751556348959

在OSI参考模型中,(22)在物理线路上提供可靠的数据传输服务。
A.物理层
B.数据链路层
C.网络层
D.传输层

简单理解:物理链路之上是数据链路层,OSI模型的数据链路层有很多可靠性保障机制,TCP/IP模型主要把可靠性保障通过传输层实现。
深入理解:数据链路层与传输层的区别,比如有3个节点是123,1到3是端到端,可靠性通过传输层协议保障,1到2或者2到3是物理链路,可靠性通过数据链路层保障,那么这题明显问的是物理链路上的可靠性。
选B

在OSI参考模型中,负责提供可靠的端到端数据传输的是()的功能
B.网络层
C.传输层
D.应用层
A.数据链路层

端到端的可靠性服务由传输层提供,注意对比区别上一题。

TCP报文格式

1751556770653

  • URG(紧急):当URG=1时,表明紧急指针字段有效,告诉系统此报文段中有紧急数据,应尽快传送(相当于高
    优先级的数据),不需要按排队顺序来传送。
  • ACK(确认):三次握手过程中,确认帧ACK=1。TCP中只有第1个数据包ACK=0,在连接建立后所有传送的报文
    段都必须把ACK置为1。
  • PSH(推送):当两个应用进程进行相互交互的通信时,有时在一端的应用进程希望在键入一个命令后立即就能够
    收到对方的响应。在这种情况下,TCP就可以使用推送PUSH操作。
  • RST(复位):表示TCP连接中出现较为严重的差错,必须释放连接,然后再重新建立连接。【非正常的差错】
  • SYN(同步):TCP三次握手建立时用来同步序号。
  • FIN(终止):用于TCP四次挥手释放连接。当FIN=1时,表明此报文段的发送方的数据已发送完毕,并要求释放
    连接。【正常的结束】

1751556990181

若有带外数据需要传送,TCP报文中(22)标志字段置“1”。
A.PSH
B.FIN
C.URG
D.ACK

URG紧急字段:通知系统此报文段中有紧急数据,应尽快传送,用来传送带外数据,
PUSH:发送方使用该标志通知接收方将所收到的数据全部提交给接收进程。这里的数据包括接收方已经
接收放在接收缓存的数据和刚刚收到的PUSH位为1的TCP报文中封装的应用数据。如下图所示:
FIN/ACK:用于TCP握手。

1751557075888

UDP报文格式

1751557145979

与TCP相比,做了很大精简,省略诸多控制字段。

UDP头部的大小为(26)字节。
B.16
C.20
D.32
A.8

IP报头20-60字节(默认20字节),TCP报头20-60字节(默认20字节),
UDP报头8字节。

2、TCP三次握手

TCP序列号及确认号

1751979839898

假设主机A通过Telnet连接了主机B,连接建立后。在命令行输入“C”。如图所示,主机B收到字符"C"
后,用于运输回送消息的TCP段的序列号seq应为(36),而确认号ack应为(37)。

1751979988087

ack号:期望接收到对方下一个报文段的第一个数据字节的序号,A发送的ack=79,故希望B回送的序号是79,那么B回送的Seq=79;A已经发了Seq=42,B则希望他下一个发序号43的数据,则ack=43。

TCP三次握手建立连接

1751980170721

1751980269678

TCP四次挥手断开连接

1751980381224

在TCP协议连接释放过程中,请求释放连接的一方(客户端)发送连接释放报文段,该报文段应该将(20)。
A.FIN置1
B.FIN置O
C.ACK置1
D.ACK置0

4次挥手断开连接,FIN置1。

当TCP一端发起连接建立请求后,若没有收到对方的应答,状态的跳变为(23)。
A.SYNSENT-CLOSED
B.TIMEWAIT-CLOSED
C.SYNSENT-LISTEN
D.ESTABLISHED-FINWAIT

选A
当TCP一端发起连接建立请求后,如果超时后没有收到对端的应答,会从同步已发送状态变为关闭状态。
TCP状态变化如下图:

1751980716038

3、流量控制和拥塞控制

TCP流量控制

  • 流量控制:为了防止发送方发送速度过快,导致接收方处理不过来,造成丢包重传,浪费网络资源。
  • TCP流量控制机制:可变大小的滑动窗口

1751981857457

1751982025361

TCP使用的流量控制协议是(65)。
A.停等ARQ协议B.选择重传ARQ协议C.后退N帧ARQ协议D.可变大小的滑动窗口协议

在实际运行中,TCP滑动窗口大小可以随时调整,所以是可变大小的滑动窗口协议。

TCP使用的流量控制协议是(21),TCP头中与之相关的字段是(22)。
(21)A.停等应答 B.可变大小的滑动窗口协议 C.固定大小的滑动窗口协议 D.选择重发ARQ协议
(22)A.端口号 B.偏移 C.窗口 D.紧急指针

选择B  C 

1751982192078

TCP拥塞控制

  • 有了流量控制,可以调节发送端和接收端的节奏,为什么还要有拥塞控制?
    • 流量控制:在A、B两个端点进行。
    • 拥塞控制:在A、B和所有网络节点中进行。

1751982302954

1751982551872

以下关于TCP拥塞控制机制的说法中,错误的是(21)。
A.慢启动阶段,将拥塞窗口值设置为1
B.慢启动算法执行时拥塞窗口指数增长,直到拥塞窗口值达到慢启动门限值
C.在拥塞避免阶段,拥塞窗口线性增长
D.当网络出现拥塞时,慢启动门限值恢复为初始值

出现拥塞,拥塞窗口恢复为初始值,门限值设置为发生拥塞时的一半。选择D

TCP采用慢启动进行拥塞控制,若TCP在某轮拥塞窗口为8时出现拥塞,经过4轮均成功收到应答,此时
拥塞窗口为(21)。
A.5 B.6 C.7 D.8

拥塞窗口为8时发生拥塞,那么门限值(拐点)为4。那么4轮应答拥塞窗口分别是:1-2-4-5,完成4轮以后,那么拥塞窗口是6。

TCP采用拥塞窗口(cwnd)进行拥塞控制。以下关于cwnd的说法中正确的是(25)。
A.首部中的窗口段存放cwnd的值
B.每个段包含的数据只要不超过cwnd值就可以发送了
C.cwnd值由对方指定
D.cwnd值存放在本地

滑动窗口:是TCP的流控措施,接收方通过通告发送方自己的可以接受缓冲区大小,从而控制发送方的发送速度。
拥塞窗口(cwnd):TCP拥塞控制措施,发送方维持一个(congestionwindow)的状态变量。拥塞窗口的大小取决于网络的拥塞程度,并且动态地在变化,发送方让自己的发送窗口等于拥塞。TCP首部的窗口是指滑动窗口,AB选项都在说滑动窗口。

以下网络控制参数中,不随报文传送到对端实体的是(22)。
B.上层协议
D.拥塞窗口大小
C.接收缓存大小
A.接收进程

接收进程、上层协议和接受缓存大小(滑动窗口)需要通告给对方,拥塞窗口本地有效。

若TCP最大段长为1000字节,在建立连接后慢启动,第1轮次发送了1个段并收到了应答,应答报文中window字段为5000字节,此时还能发送(25)字节。
A.1000
C.3000
D.5000
B.2000

假如TCP最大段长为1000B,在建立连接后慢启动,第1轮发送了一个段并收到了应答,按照慢启动指数增长,那么把拥塞窗口扩大到2000字节(表示网络最大允许通信量是2000字节),而应答报文中win字段为5000字节(表示客户端最大缓存是5000字节),此时可以发送的最大数据为min[2000,5000]=2000字节。

4、重点协议端口号总结(非常重要)

TCP/UDP端口号

1751983182526

  • 源端口随机分配,目标端口使用知名端口。
  • 应用客户端使用的源端口一般为系统中未使用的且大于1024。
  • 目的端口号为服务器端应用服务器的进程,如telnet为23。

Web访问中,下面哪一种情况不可能出现()。
A.源端口80,目的端口1028
B.源端口1028,目的端口80
C.源端口65532,目的端口8080
D.源端口4000,目的端口4000

Web访问中源端口是大于1024的随机端口,目的端口常规是80/8080/443,也可以自定义为大于1024的非知名端口。

1751983564311

1751983656815

下列()协议使用TCP作为其传输层协议?
A.ICMP
B.IP
C. E-mail
D.SNMP

ICMP是封装在IP里面,IP可以封装在UDP或者TCP,SNMP是UDP封装。
邮件相关协议:
SMTP  TCP/UDP 25 通常使用TCP
POP3  TCP 110
IMAP   TCP143

邮件客户端需监听(38)端口及时接收邮件。
A.25 B.50 C.100 D.110

选择D

使用电子邮件客户端从服务器下载邮件,使实现邮件的移动、删除等操作在客户端和邮箱上更新同步,所使用的电子邮件接收协议是(30)。
A.SMTP
B.POP3
C.IMAP4
D.MIME

SMTP是邮件发送,POP3是邮件下载,IMAP是跟POP3类似的协议。不同的是,开启了IMAP后,在电子邮件客户端收取的同时在客户端上的操作都会反馈到服务器上如:删除邮件,标记已读等,服务器上的邮件也会做相应的动作,故选C更佳。

1751983943241

用户使用ftp://zza.com访问某文件服务,默认通过目标端口为(37)的请求建立(38)链接。
(37)A.20 B.21 C.22 D.23
(38)A.TCP B.UDP C.HTTP D.FTP

选择B A
FTP控制端口是21,数据端口是20,基于TCP。

下列不属于快速UDP互联网连接(QUIC)协议的优势是(29)。
A.高速且无连接
B.避免队头阻塞的多路复用
C.连接迁移
D.前向冗余纠错

QUIC(QuickUDPInternet Connection,快速UDP网络连接)是谷歌制定的一种基于UDP的低时延的互联网传输层协议,已被IETF采纳为标准。特点:
1.减少了TCP三次握手及TLS握手时间。
2.改进的拥塞控制。
3.避免队头阻塞的多路复用。
4.连接迁移。
5.前向冗余纠错。
可以把QUIC理解成具备TCP特性的UDP。

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

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

相关文章

设计模式—专栏简介

大学总是忙着参加ACM实验室的各种事情,到了毕业的时候,对于设计模式也是仅了解单例模式。毕业后,刚开始代码也是乱写一通,完全没有章法。整个开发环境也是为了解决问题,从来没有考虑结构化什么的(没办法&am…

面试150 链表的复制

思路 python可以使用调库法,使用深度拷贝 """ # Definition for a Node. class Node:def __init__(self, x: int, next: Node None, random: Node None):self.val int(x)self.next nextself.random random """class Solution:de…

MySQL分布式ID冲突详解:场景、原因与解决方案

引言 在分布式系统开发中,你是否遇到过这样的崩溃时刻?——明明每个数据库实例的自增ID都从1开始,插入数据时却提示“Duplicate entry ‘100’ for key ‘PRIMARY’”;或者分库分表后,不同库里的订单ID竟然重复&#x…

c++文字游戏_闯关打怪2.0(开源)

本次更新内容: 1.增强对手性能 2.可暂停(按N) 3.修复些许bug 4.增加boos关(第10、20、30...关) 1. 游戏概述 本游戏是一个基于Windows控制台的回合制战斗游戏,采用俯视视角的2D平面设计。玩家控制角色"p"在1325大小的封闭场景中与敌人"@"战斗,通过…

Java学习第十二部分——idea各种项目简介

目录 一.前言 二.语言介绍 三.生成器介绍 四.拓展 一.前言 打开idea项目创建时发现如上情况,“新建项目”下面的是语言,生成器下面的是这些语言对应的生成器工具,本文将简单介绍。 二.语言介绍 Java 用途:Java是一种广泛使…

Codeforces Round 868 (Div. 2) D. Unique Palindromes(1900,构造)

Problem - D - Codeforces 不错的字符串构造体,记录一下 首先注意到k≤20这一条件。对于一个长度为n的字符串,最多有n个不同的回文子串,这种情况出现在所有字符都相同时。因此,限制条件中的xi必须满足xi≤ci,且相邻两…

ClickHouse 全生命周期性能优化

引言 ClickHouse作为列式存储的OLAP数据库,以其极致的查询性能著称,但"高性能"并非开箱即用。不合理的表设计、SQL写法或集群配置,可能导致性能衰减甚至服务不可用。本文基于ClickHouse 24.3版本,从设计规范、开发规范、…

Linux sed 命令 详解

在 Linux 系统中,sed(Stream Editor)是一个非常强大且灵活的文本处理工具。它不仅可以用于简单的文本替换、删除和插入操作,还能实现复杂的文本转换任务。 📌 一、什么是 sed? sed 是一个基于模式匹配对文…

项目进度同步不及时,如何提升信息透明度

项目进度同步不及时的核心问题包括沟通渠道不畅通、缺乏统一的信息平台、未建立明确的进度更新机制、团队意识不足、责任划分不明确等。其中,缺乏统一的信息平台最为关键。统一的信息平台能够确保所有相关人员实时掌握最新的进度状态,避免信息孤岛&#…

使用各种CSS美化网页

实验目的1.理解CSS的概念,掌握CSS定义样式的方法,具备使用CSS和相关库进行界面样式设计的能力。 2.掌握Bootstrap 5的基本使用方法。3.Bootstrap框架练习实验步骤1. 实验准备创建一个HTML文件(如 index.html)。引入Bootstrap5的CS…

在PPT的文本框中,解决一打字,英文双引号就变成中文了

问题:在制作PPT的过程中,插入文本框,在里面输入代码类的格式时,使用英文的双引号"",但是只要在后面输入内容,或者逗号等,英文双引号就变成中文了,很烦原因:大概…

iOS 证书过期如何处理

找到钥匙串位置创建新的CSR文件。点击菜单中钥匙串访问—>证书助理—>从证书颁发机构请求证书…进入证书助理,填写信息(用户名称和邮箱随便写),请求是 选择 存储到磁盘创建好CSR文件,回到developer 证书管理中心…

CODESYS + 全志T113-i + 国产系统OneOS,打造新一代工业控制解决方案!

创龙科技与中移物联网有限公司、CODESYS携手合作,成功实现了T113-i工业评估板对国产系统OneOS CODESYS软件的适配,此举将让工业自动化领域的工程师们更高效地开发,并为众多企业产品的快速上市提供强有力的保障。 解决方案简介 CODESYS简介 …

三、jenkins使用tomcat部署项目

一、安装tomcattomcat本来应该是第3台服务器的(第一台:gitlab,第二台:jenkins,第三台:tomcat),我这里资源有限,就把tomcat安装jenkins服务器了。#解压tocmcat [rootbogon…

华为eNSP防火墙实验(包含详细步骤)

拓扑图 这里要用的防火墙是 , 需要导入 目录 防火墙配置1(启动图形化界面) cloud配置 缓冲区服务器配置 防火墙配置2(各端口的ip地址) 外部路由器配置 本地路由器配置 防火墙配置3(配置安全策略&a…

Linux/Unix线程及其同步(create、wait、exit、互斥锁、条件变量、多线程)

线程 文章目录线程I 线程基本概念1、为什么引入线程2、PthreadsII 线程基本操作1、创建线程2、终止线程3、线程ID4、连接已终止线程5、线程基本操作示例III 通过互斥量同步线程1、基本概念2、互斥量(Mutex)3、静态分配互斥量4、互斥量锁定与解锁5、互斥量…

vue3 el-table 行数据沾满格 取消自动换行

在 Vue.js 使用 Element UI 或 Element Plus 的 <el-table> 组件时&#xff0c;如果你希望其中的单元格内容不自动换行&#xff0c;可以通过设置 CSS 样式来实现。这里有几种方法可以做到这一点&#xff1a;方法1&#xff1a;使用 CSS 样式你可以直接在 <el-table-col…

操作系统级TCP性能优化:高并发场景下的内核参数调优实践

在高并发网络场景中&#xff0c;操作系统内核的TCP/IP协议栈配置对系统性能起着决定性作用。本文聚焦操作系统层面&#xff0c;深入解析内核参数调优策略&#xff0c;帮助读者构建稳定高效的网络通信架构。 一、连接管理参数优化&#xff1a;从三次握手到队列控制 1.1 监听队列…

基于物联网的智能交通灯控制系统设计

标题:基于物联网的智能交通灯控制系统设计内容:1.摘要 摘要&#xff1a;随着城市交通流量的不断增加&#xff0c;传统交通灯控制方式已难以满足高效交通管理的需求。本研究的目的是设计一种基于物联网的智能交通灯控制系统。方法上&#xff0c;该系统利用物联网技术&#xff0c…

nodejs中使用UDP传递信息

什么是UDP?UDP&#xff08;User Datagram Protocol&#xff0c;用户数据报协议&#xff09;是一种无连接的网络传输协议&#xff0c;位于 OSI 模型的传输层&#xff08;第四层&#xff09;&#xff0c;与 TCP&#xff08;传输控制协议&#xff09;同为互联网的核心协议之一。它…