(建议收藏)计算机网络:TCP-首部格式,序号确认和连接管理习题解析与拓展

Posted Zeker62

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了(建议收藏)计算机网络:TCP-首部格式,序号确认和连接管理习题解析与拓展相关的知识,希望对你有一定的参考价值。

TCP(1)-首部格式,序号确认和连接管理

一.单选题(共12题,69.6分)

1 关于TCP,以下哪一项描述是错误的
A、提供面向字节流传输服务
B、因为面向字节流,所示实现过程简单
C、提供面向连接传输服务
D、实现进程间通信

正确答案: B
首先要明确一点,TCP确实是面向字节流的,物理层是比特流。意思就是说,在网络里,不管是UDP还是TCP,都是面向字节流的,因为他们都以字节传输。
但是TCP要比UDP更加复杂,这里不能说它所示实现过程简单,和UDP比复杂多了。
TCP是面向连接的,服务给应用层实现了进程间的通信。

2 下述哪一项是描述TCP差错控制机制的关键词
A、端口、序号和窗口
B、流量控制、拥塞控制和拥塞窗口
C、检错码、序号、确认应答和重传
D、慢启动、拥塞避免和慢启动阈值

正确答案: C

差错控制机制的关键词:就是在出错的时候,到底哪些东西能够发挥作用来显示它的差错。
检错码能够检查数据的错误。序号和确认应答能够检查传输的错误。重传能够挽救错误。

3 根据图中所示的传输层报头回答,下列描述正确的是?

在这里插入图片描述
A、 这是 UDP 报头。

B、 包含 Telnet 请求。

C、 包含 FTP 数据传输。

D、 从这台远程主机返回的数据包将包含确认号 43693。

正确答案: B
Telnet的端口号是23,FTP默认端口号是21.
在这里插入图片描述

UDP才没有上面编号什么的,下面是UDP的首部报文:
在这里插入图片描述
序号是43693?它长度都没说,怎么可能知道确认号呢。

4 TCP 报头信息和 UDP 报头信息中都包含下列哪项信息?

A、 序列号

B、 端口号

C、 窗口大小

D、 选项字段

正确答案: B
上面有UDP的首部报文和TCP的首部报文。他们都有着目标端口号的信息。

5 一个SYN,ACK标记都为1的TCP数据段属于?

A、 第一次握手

B、 第二次握手

C、 第三次握手

D、 确认包

正确答案: B

我随便抓了一个包

6 数据段的 TCP 报头中为什么包含端口号?( )

A、 指示转发数据段时应使用的正确路由器接口

B、 标识接收或转发数据段时应使用的交换机端口

C、 确定封装数据时应使用的第 3 层协议

D、 让接收主机转发数据到适当的应用程序

正确答案: D
端口号对应着合适的应用层。应用层指的就是应用程序。

7 TCP一共可以提供多少个端口( )

A、 2

B、 1024

C、 65535

D、 无限个

正确答案: C
TCP最多提供65535个端口。
目的端口占有着2个字节,16个比特。
2^16 =65535
所以最大提供着65535个字节。

8 当 TCP 接收端获得一个有效载荷大小 是1000和序列号为8000 的数据段时,有效载荷中的最后一个字节相关联的序列号是多少?
A、7999
B、9000
C、8000
D、8999

正确答案: D
序号从0开始,8000+1000-1=7999

9 主机甲与主机乙之间建立了一个TCP连接,主机甲向主机乙发送了3个连续的TCP段,分别包含300B,400B和500B的有效载荷,第3个段的序号为900,若主机乙仅正确收到第1和第3个段,则主机乙发送给主机甲的确认序号是多少?
A、1400
B、500
C、1200
D、300

正确答案: B
这个很简单。也是考研真题。
第三个段的序号是900,那么第一个段的序号是900-300-400=200.主机只能正确接收到第一个和第三个段,那么还差第二个段,那么确认号上显示的就是第一个段的确认号,就是200+300=500.来表示第二个段需要重新传送。

10
假设TCP发送方先后发送了报文段1、2和3,但TCP接收方收到报文段的顺序却是1、3、2,假设接收方每收到一个报文段都返回一个确认报文,则接收方3次收到报文后返回的确认分别是( )。

A、 第一次对1确认,第二次对1确认,第三次对3确认

B、 第一次对1确认,第二次对3确认,第三次对2确认

C、 第一次对1确认,第二次对3确认,第三次对3确认

D、 第一次对1确认,第二次对2否认,第三次对3确认

正确答案: A
第一次发送1接收1对1的确认。
第二次方式2 收不到,超时要重新发送2,发送1的确认。
这个时候先前的3已经过来了,需要发送对3的确认。
之后还有
第四次会收到2的报文段发送对2的确认。,所以是1、3、2.

11
主机甲向主机乙发出一个(SYN,seq=11220)的TCP段,期望与主机乙建立TCP连接,若主机乙接受该连接请求,则主机乙向主机甲发送的正确的TCP段可能是:
A、(SYN=0,ACK=0,seq=11220,ack=11220)
B、(SYN=1,ACK=1,seq=11221,ack=11221)
C、(SYN=1,ACK=1,seq=11220,ack=11220)
D、(SYN=0,ACK=0,seq=11221,ack=11221)

正确答案: B
考研真题。
主机甲发送第一次握手,序号是11220
主机乙发送第二次握手,syn=1、ack=1毫无疑问。
记住确认号一定要加一,ack=11221.
在这里插入图片描述

二.多选题(共1题,5.8分)

1 下列哪些关于TCP 报头的陈述不准确?
A、TCP 段头不包含数据段总长度有关的信息
B、TCP段头允许接收端标记到目前为止接收了什么数据和可达的缓冲空间
C、TCP 段头包含确定TCP 数据段的源和目的地的数据
D、TCP段头有校验位,用来保护有效载荷
E、TCP 段头被用来确定数据段应被传递到的套接字

正确答案: BDE
答案解析:
A、TCP关于长度只告诉了首部报文长度和MSS最大报文段长度。并没有说数据段总长度有关的信息。
B、标记不了目的段接收了什么数据,如果数据量很大,标记这么多TCP转不下。
D、校验和保护的不只是有效载荷,还有头部、伪头部。
E、段中只有端口号,里面没有IP地址,所以,确定不了套接字
在这里插入图片描述

三.判断题(共4题,24.6分)

1 TCP协议模块一般在网络边缘的主机中实现。

我的答案:×
网络的核心部分可是ISP和路由器

2 TCP提供了面向连接的数据传输服务,保证了每一个字节的绝对可靠。

我的答案:×
无法保证每个字节都可靠,他是面向连接服务,不是面向数据可靠的服务,它主要是有着一个可靠的连接。

3 主机A通过一条TCP连接向主机B发送一个大文件。假设主机B没有数据发往主机A。因为主机B不能随数据捎带确认信息,所以主机B将不向主机A发送确认。

我的答案:×
不发确认?这还是TCP吗?

4 如果两个通信实体在彼此发送数据之前首先交换控制分组,则使用了握手协议。

我的答案:√
发送数据前有资源的分配,就是面向连接的服务,TCP。

以上是关于(建议收藏)计算机网络:TCP-首部格式,序号确认和连接管理习题解析与拓展的主要内容,如果未能解决你的问题,请参考以下文章

确认号啥时候有意义

TCP报文段的首部格式

TCP三次握手和四次握手

网络自定向下学习——TCP报文段的详细解析

传输层-第九节:TCP报文段的首部格式

TCP_数据报文首部格式