网课资源:
湖科大教书匠
1、进程间的通信
运输层协议又叫端到端协议,提供进程之间的逻辑通信
面向连接的TCP和无连接的UDP
习题
1 运输层为( )之间提供逻辑通信服务。
A. 主机
B. 进程
C. 路由器
D. 操作系统
2 在TCP/IP体系结构中,运输层的主要作用是在互联网络的源主机和目的主机对等实体之间建立用于会话的( )
A. 点到点连接
B. 操作连接
C. 端到端连接
D. 控制连接
2、运输层 端口号,复用与分用
运输层使用端口号区分进程
端口号:0-65535
分为服务器端和客户端
使用TCP:BGP、FTP、SMTP、HTTP、HTTPS。
使用UDP:DNS、DHCP、RIP
习题2
1 在TCP/IP中,采用( )来区分不同的应用进程。
A. 端口号
B. IP地址
C. 协议类型
D. MAC地址
2 在TCP/IP网络中,为各种熟知应用保留的端口号范围是
A. 1~255
B. 0~1023
C. 1~1024
D. 1~65535
3 在TCP/IP中,运输层端口号的范围是
A. 1~255
B. 0~1023
C. 1~1024
D. 0~65535
3、UDP和TCP对比
用户数据报协议UDP:
无连接;
支持单播、多播、广播;
面向应用报文的,只添加UDP首部;
提供不可靠传输服务;
首部为8字节
传输控制协议TCP:
面向连接(三次握手,四次挥手);
仅支持单播;
将应用层报文看成字节流(面向字节流的),编号发送,大小不确定;
提供可靠传输服务;
首部为20-60字节;
UDP首部:
源端口:2字节
目的端口:2字节
长度(首部+数据):2字节
校验和:2字节
习题3
1 以下字段包含在TCP首部中而不包含在UDP首部中的是
A. 目标端口号
B. 序号
C. 源端口号
D. 校验和
2 若接收端收到有差错的UDP用户数据报,则会
A. 将其丢弃
B. 请求重传
C. 纠错
D. 忽略差错
3 UDP用户数据报比IP数据报多提供了
A. 流量控制功能
B. 拥塞控制功能
C. 端口功能
D. 路由转发功能
4 下列不属于TCP特点的是
A. 面向字节流
B. 全双工
C. 可靠
D. 支持广播
4、TCP首部格式
序号:0-232-1,指出数据载荷第一个字节的序号。
确认号:0-232-1,指出期望收到对方下一个报文段数据载荷的第一个字节的序号。
确认标志位ACK:为1时确认号字段有效,为0无效。TCP连接建立后所有传送的TCP报文段都必须把ACK设为1.
数据偏移:占4比特,以4字节为单位,指出数据载荷起始处距离TCP报文段的起始处有多远。
保留字段:6比特,置0
窗口:16比特,以字节为单位,指出发送该报文的接受窗口的大小
检验和:16比特,检验是否出现误码;在TCP首部前加12字节的伪首部,三个部分按两字节划分求和(不足补一个全0字节)
SYN:SYN=1,ACK=0时,这是一个TCP连接请求报文,同意连接则响应报文SYNACK都为1.
FIN:四报文挥手释放连接时置1
RST:为1时表明TCP连接出现严重差错,必须释放连接重新建立;置1还可拒绝非法的TCP报文段或拒绝打开一个T连接
PSH:置1,证明发送方通知TCP进行了PUSH操作,即立即发送报文不等待,接受方收到后也尽快交付
URG:为1时紧急指针字段有效
紧急指针:16比特,指出本报文段包含了多长的紧急数据。紧急数据之后时普通数据。
接受方收到后会从载荷中取出紧急数据交付,而不等待
习题4
1 TCP报文段首部的最小长度为
A. 20字节
B. 40字节
C. 60字节
D. 80字节
2 TCP报文段首部的最大长度为
A. 20字节
B. 40字节
C. 60字节
D. 80字节
3 TCP报文段首部中序号字段的作用是
A. 指明TCP报文段首部第一个字节的序号
B. 指明TCP报文段的数据载荷的第一个字节的序号
C. 指明TCP报文段的数据载荷的最后一个字节的序号
D. 指明TCP报文段的数据载荷的长度
4 TCP报文段首部中窗口字段的值
A. 指明自己的拥塞窗口的尺寸
B. 指明对方的发送窗口的尺寸
C. 指明自己的接收窗口的尺寸
D. 指明对方的拥塞窗口的尺寸
5、TCP运输连接管理
三报文握手
四报文挥手
习题5
1 TCP采用三报文握手建立连接,其中第一个报文首部中的同步标志位SYN和确认标志位ACK的取值分别是
A. 0,0
B. 0,1
C. 1,0
D. 1,1
2 TCP采用三报文握手建立连接,其中第二个报文首部中的同步标志位SYN和确认标志位ACK的取值分别是
A. 0,0
B. 0,1
C. 1,0
D. 1,1
3 TCP采用三报文握手建立连接,其中第三个报文是
A. TCP连接请求
B. 对TCP连接请求的确认
C. 对TCP连接请求确认的确认
D. TCP普通数据
4 主机甲向主机乙发送一个(SYN=1,
seq=100)的TCP段,期望与主机乙建立TCP连接,若主机乙接受该连接请求,则主机乙向主机甲发送的正确的TCP段可能是A. (SYN=0, ACK=0, seq=101, ack=101)
B. (SYN=1, ACK=1, seq=100, ack=100)
C. (SYN=0, ACK=0, seq=123, ack=123)
D. (SYN=1, ACK=1, seq=123, ack=101)
5
主机甲发起与主机乙的TCP连接,主机甲选择的初始序号为200,如果三报文握手建立连接过程中最后一个报文不携带数据载荷,则TCP连接建立成功后主机甲给主机乙发送的第一个数据报文段的序号为A. 199
B. 200
C. 201
D. 202
6
TCP的通信双方,有一方发送了FIN标志位为1的报文段,表示A. 将断开通信双方的TCP连接
B. 单方面释放连接,表示本方已经无数据发送,但可以接收对方的数据
C. 中止数据发送,双方都不能发送数据
D. 连接被重新建立
7
假设TCP客户与TCP服务器的通信已经结束,TCP客户与TCP服务器之间端到端的平均往返时间为RTT,在t时刻TCP客户请求断开连接,则从t时刻起,TCP服务器释放该连接的最短时间是A.
0.5个RTTB. 1个RTT
C. 1.5个RTT
D. 2个RTT
6、TCP流量控制
发送方根据接受方的窗口值,来调整自己的发送窗口的大小。如果接受方返回一个窗口值为0的报文端,则发送方不再发送数据,并启动持续计时器,持续计时器超时则发送方发送零窗口探测报文段,该报文段仅携带1字节数据。如果接受方返回了的窗口值是0,则重启持续计时器,否则结束持续计时器。以防报文丢失,发送方发送的所有报文都会启动超时重传计时器,零窗口报文段丢失了,则超时后也会重传。
习题6
1 在采用TCP连接的数据传输阶段,如果发送端的发送窗口值由1000变为2000,那么发送端在收到一个确认之前可以发送
A. 2000个TCP报文段
B. 2000B
C. 1000B
D. 1000个TCP报文段
2 A和B建立了TCP连接,当A收到确认号为100的TCP确认报文段时,表示
A. 已收到99号TCP报文段
B. 已收到100号TCP报文段
C. 已收到数据载荷部分最后一字节序号为99的TCP报文段
D. 已收到数据载荷部分最后一字节序号为100的TCP报文段
3 在TCP协议中,发送方的窗口大小取决于
A. 仅接收方允许的窗口
B. 接收方允许的窗口和发送方允许的窗口
C. 接收方允许的窗口和拥塞窗口
D. 发送方允许的窗口和拥塞窗口
4
主机甲和主机乙之间建立了一个TCP连接,TCP最大段长度为1000字节,若主机甲当前发送窗口为6000字节,不考虑拥塞窗口,在主机甲向主机乙连续发送三个最大段后,成功收到主机乙发送的第一个段的确认段,确认段中通告的接收窗口大小为4000字节,则此时主机甲还可以向主机乙发送的最大字节数是A. 1000
B. 2000
C. 3000
D. 4000
7、TCP的拥塞控制
因特网使用闭环控制方法
TCP四种拥塞控制方法:慢开始、拥塞避免、快重传、快恢复
慢开始:cwnd初始为1,设置慢开始门限值,只要该窗口内数据正常传输,cwnd,就乘以2。直到cwnd>=慢开始门限的值。
如果cwnd2时大于慢开始门限(等于没事),则放弃此次2,执行拥塞避免算法
拥塞避免:只要窗口内数据正确船时,cwnd值+1。
重传计时器超时:发送方报文 丢失,慢开始门限的值为cwnd值的一半,cwnd=1,重新执行慢开始算法
快重传:发送方收到对同一个报文段的3个重复确认(不包括第一次需要的ack),则立即重传该报文段。
快恢复:发生了快重传时,发送方将慢开始门限的值和 cwnd的值调整为 当前cwnd的一半,并执行拥塞避免算法。
习题7
1 以下关于TCP窗口与拥塞控制概念的描述中,错误的是
A. 接收窗口通过TCP首部中的窗口字段通知数据的发送方
B. 发送窗口确定的依据是:发送窗口=min[接收窗口,拥塞窗口]
C. 拥塞窗口是接收端根据网络拥塞情况确定的窗口值
D. 拥塞窗口大小在开始时可以按指数规律增长
2
一个TCP连接总是以1KB的最大段长发送TCP段,发送方有足够多的数据要发送。当拥塞窗口为34KB时发生了超时,如果接下来的4个RTT内的TCP段的传输都是成功的,那么当第4个RTT时间内发送的所有TCP段都得到肯定应答时,拥塞窗口的大小是A. 8KB
B. 9KB
C. 16KB
D. 17KB
3 设TCP拥塞窗口的慢开始门限初始值为8(单位为TCP报文段),当拥塞窗口上升到12时发生超时,则第13个传输轮次时拥塞窗口的大小为
A. 4
B. 5
C. 6
D. 7
4
一个TCP连接总是以1KB的最大段长发送TCP段,发送方有足够多的数据要发送。当拥塞窗口为34KB时收到了3个重复的ACK报文,如果接下来的4个RTT内的TCP段的传输都是成功的,那么当第4个RTT时间内发送的所有TCP段都得到肯定应答时,拥塞窗口的大小是A. 8KB
B. 16KB
C. 20KB
D. 21KB
5
主机甲和乙建立了TCP连接,甲始终以1KB大小的段发送数据,并一直有数据发送;乙每收到一个数据段都会发出一个接收窗口为10KB的确认段。若甲在t时刻发生超时的时候拥塞窗口为16KB,则从t时刻起,不再发生超时的情况下,经过10个RTT后,甲的发送窗口是A. 10KB
B. 12KB
C. 14KB
D. 15KB
8、TCP的可靠传输
TCP协议中的ack号与选择重传中的不一样,选择重传中的是已接受的序号,TCP中的是想要接受的序号。
发送方将窗口内的数据发送出去,不必等待接受方回复才发,若收到的确认为当前窗口的起始号,则继续发送窗口内的数据不理会(除非重复3次除法快重传机制);若收到的确认不为当前窗口的起始,则移动窗口,继续发送窗口内的数据,直到发完。发完后等待确认再移动窗口进行发送,若等待时间过长,会触发超时重传机制
习题8
1
主机甲和乙建立了TCP连接,主机甲向主机乙发送了两个连续的TCP段,分别包含200字节和300字节的有效载荷,第一个段的序号为100,主机乙正确接收到两个段后,发送给主机甲的确认号是A. 500
B. 600
C. 800
D. 900
2
主机甲和乙建立了TCP连接,主机甲向主机乙发送了3个连续的TCP段,分别包含200字节、300字节、400字节的有效载荷,第3个段的序号为1000。若主机乙仅正确接收到第1和第3个段,则主机乙发送给主机甲的确认号是A. 500
B. 600
C. 700
D. 800
3
主机甲和乙建立了TCP连接,双方持续有数据传输,且数据无差错与丢失。若甲收到1个来自乙的TCP段,该段的序号为1024,确认序号为2048,有效数据载荷为200字节,则甲立即发送给乙的TCP段的序号和确认号分别是A. 2048、1223
B. 2048、1224
C. 2049、1223
D. 2049、1224
9、TCP的超时重传
超时重传时间RTO应略大于RTT
推荐的加权平均往返时间RTTs计算公式为(α为0.125):
习题9
1 以下关于TCP超时重传时间RTO的叙述中,正确的是
A. RTO应小于TCP端到端加权平均往返时间RTTs
B. RTO应远大于TCP端到端加权平均往返时间RTTs
C. RTO应等于TCP端到端加权平均往返时间RTTs
D. RTO应略大于TCP端到端加权平均往返时间RTTs
2 若出现超时重传,则以下关于TCP超时重传时间RTO的叙述中,正确的是
A. RTO的值应清零
B. RTO的值应扩大两倍
C. RTO的值应减1
D. RTO的值应保持不变
习题答案
习题1:B、C
习题2:A、B、D
习题3:B、A、C、D
习题4:A、C、B、C
习题5:C、D、C、D、C、B、C
习题6:B、C、C、B
习题7:C、C、D、D、A
习题8:B、C、B
习题9:D、B