计算机网络练习题—5
计算机网络运输层与应用层练习题
一、选择题
1.【2014统考真题】下列关于UDP协议的叙述中, 正确的是( B )。
I.提供无连接服务 II.提供复用/分用服务 III.通过差错校验,保障可靠数据传输
A. 仅I B. 仅I、II C. 仅II、III D. I、II、III
[解析] UDP协议是面向元连接的不可靠的数据传输协议,因此不会提供差错校验功能。
2.【2018统考真题】UDP协议实现分用时所依据的头部字段是( B )。
A.源端口号 B. 目的端口号 C. 长度 D. 校验和
要明确几个概念:
复用: 多个用户使用一个 IO 发送消息.
分用: 一个 IO 收到的消息被分发给多个用户
源端口号是在需要对方回信的时候才使用,A错。
目的端口号在终点交付报文的时候使用,B对。
长度和校验和根本就不符合分用的定义,故直接排除。
传输层分用的定义:接收方的传输层剥去报文首部后,能把这些数据正确交付到目的进程。
3.【2014统考真题】主机甲和乙建立了TCP连接, 甲始终以MSS=1KB大小的段发送数据, 并一直有数据发送;乙每收到一个数据段都会发出一个接收窗口为10KB的确认段。若甲在t时刻发生超时的时候拥塞窗口为8KB,则从t时刻起,不再发生超时的情况下,经过10个RTT后,甲的发送窗口是( A )。
A.10KB B. 12KB C. 14KB D. 15KB
1、把慢开始的门限值设为当前窗口的一半,即ssthresh=1/2 *8KB=4KB
2、把拥塞窗口cwnd设置为1个最大报文段MSS大小
3、再次从慢启动阶段开始。发生拥塞后
开始慢启动 cwnd=1KB,之后呈指数增长。
经过1个RTT cwnd=2^1=2KB
经过2个RTT cwnd=2^2=4KB, 此时到达门限值ssthresh,之后 进入拥塞避免 阶段
经过3个RTT cwnd=4+1=5KB , 由于题目说之后一直都没有发生超时,cwnd会一直线性增长到接收窗口大小
…
经过8个RTT cwnd=10KB, 因为发送端不能超过接收端10,此后拥塞窗口一直保持cwnd=10KB。
发送窗口大小=min(接收窗口,拥塞窗口)=10KB。故选A
- A和B之间建立了TCP连接, A向B发送了一个报文段, 其中序号字段seq=200,确认号字段ack=201,数据部分有2个字节,那么在B对该报文的确认报文段中( C ) 。
A.seq=202, ack= 200 B. seq=201, ack= 201
C. seq=201, ack= 202 D. seq=202, ack= 201
在A发向B的报文中,seq表示发送的报文段中数据部分的第一个字节在A的发送缓存区中的编号,ACK表示A期望收到的下一个报文段的数据部分的第一个字节在B的发送缓存区中的编号。因此,同一个TCP报文中的seq和ACK的值是没有联系的。在B发给A的报文(捎带确认)中,seq值应和A发向B的报文中的ACK值相同,即201; ACK值表示B期望下次收到A发出的报文段的第一个字节的编号,应是200+2=202。即seq=201, ack=202, 故选C。
5.【2009统考真题】主机甲与主机乙之间已建立一个TCP连接, 主机甲向主机乙发送了两个连续的TCP,分别包含300B和500B的有效载荷, 第一个段的序列号为200,主机乙正确接收到这两个数据段后,发送给主机甲的确认序列号是( D )。
A.500 B. 700 C. 800 D. 1000
返回的确认序列号是接收方期待收到对方下一个报文段数据部分的第一个字节的序号.
因此乙在正确接收到两个段后,返回给甲的确认序列号是200+300+500= 1000.
- 【2009统考真题】一个TCP连接总以1KB的最大段长发送TCP段, 发送方有足够多的数据要发送, 当拥塞窗口为16KB时发生了超时, 如果接下来的4个RTT时间内的TCP段的传输都是成功的, 那么当第4个RTT时间内发送的所有TCP段都得到肯定应答时, 拥塞窗口大小是( C )。
A.7KB B. 8KB C. 9KB D. 16KB
在发生超时后,慢开始门限ssthresh变为16KB/2=8KB,拥塞窗口变为1KB。在接下来的3个RTT内,执行慢开始算法,拥塞窗口大小依次为2KB、4KB、 8KB, 由于慢开始门门限ssthresh为8KB,因此之后转而执行拥塞避免算法,即拥塞窗口开始“加法增大”。因此第4个RTT结束后,拥塞窗口的大小为9KB。
7.【2010统考真题】主机甲和主机乙之间已建立一个TCP连接, TCP最大段长为1000B。若主机甲的当前拥塞窗口为4000B,在主机甲向主机乙连续发送两个最大段后,成功收到主机乙发送的第一个段的确认段,确认段中通告的接收窗口大小为2000B,则此时主机甲还可以向主机乙发送的最大字节数是( A )。
A.1000 B. 2000 C. 3000 D. 4000
发送方的发送窗口的上限值取接收方窗口和拥塞窗口中的最小值,即min(4000, 2000)=2000B,由于还未收到第二个最大段的确认,所以此时主机甲还可以向主机乙发送的最大字节数为2000-1000=1000B。
8.【2011统考真题】主机甲向主机乙发送一个(SYN=1, seq=11220) 的TCP段, 期望与主机乙建立TCP连接, 若主机乙接受该连接请求, 则主机乙向主机甲发送的正确的TCP段可能是( C ) 。
A. (SYN=0, ACK=0, seq=11221, ack=11221)
B. (SYN=1, ACK=1, seq=11220, ack=11220)
C. (SYN=1, ACK=1, seq=11221, ack=11221)
D. (SYN=0, ACK=0, seq=11220, ack=11220)
解析:在确认报文段中,同步位SYN和确认位ACK必须都是1;返回的确认号seq是甲发送的初始序号seq=11220加1,即ack=11221;同时乙也要选择并消耗一个初始序号seq,seq值 由乙的TCP进程任意给出,它与确认号、请求报文段的序号没有任何关系。
- 【2013统考真题】主机甲与主机乙之间已建立一个TCP连接, 双方持续有数据传输, 且数据无差错与丢失。若甲收到一个来自乙的TCP段, 该段的序号为1913、确认序号为 2046、有效载荷为100B, 则甲立即发送给乙的TCP段的序号和确认序号分别是( B ) 。
A.2046、2012 B. 2046、2013 C. 2047、2012 D. 2047、2013
题目给定乙发送给甲的TCP段的确认序号为2046,这表明乙已正确接收到甲之前发送的序号为2046以前的有效载荷,现在乙期望接收甲发送的有效载荷的第1个字节的序号为2046的有效载荷。换句话说,甲立即发送给乙的TCP段的序号应为2046,表明该段的有效数据载荷的第1个字节的序号为2046。
题目给定乙发送给甲的TCP段的序号为1913,且有效载荷为100字节,则该TCP段的有效载荷的最后1个字节的序号为2012,因此甲立即发送给乙的TCP段的确认序号应该为2012+1=2013,表明乙之前发送的序号2012及以前的有效载荷已正确接收。 因此,选项B正确。
过程:
- 【2015统考真题】主机甲和主机乙新建一个TCP连接, 甲的拥塞控制初始阈值为32KB,甲向乙始终以MSS=1KB大小的段发送数据, 并一直有数据发送; 乙为该连接分配16KB接收缓存,并对每个数据段进行确认,忽略段传输延迟.若乙收到的数据全部存入缓存,不被取走,则甲从连接建立成功时刻起,未出现发送超时的情况下,经过 4个RTT后,甲的发送窗口是( A )。
A.1KB B. 8KB C. 16KB D. 32KB
解析:
发送窗口的上限值=Min[接收窗口,拥塞窗口]。4个RTT后, 乙收到的数据全部存入缓存,不被取走,接收窗口只剩下1KB (16-1-2-4-8=1) 缓存,使得甲的发送窗口为1KB。
- 【2017统考真题】若甲向乙发起一个TCP连接, 最大段长MSS=1KB, RTT=5ms, 乙开辟的接收缓存为64KB,则甲从连接建立成功至发送窗口达到32KB,需经过的时间至少是( A )。
A.25ms B. 30ms C. 160ms D. 165ms
解析:
按照慢开始算法,发送窗口=min{拥塞窗口,接收窗口},初始的拥塞窗口为最大报文段长度1KB。每经过一个RTT,拥塞窗口翻倍,因此需至少经过5个RTT,发送窗口才能达到32KB,所以选A。这里假定乙能及时处理接收到的数据,空闲的接收缓存≥32KB。
过程:
12.【2017统考真题】若甲向乙发起一个TCP连接, 最大段长MSS=1KB, RTT=5ms,则在不出现拥塞的前提下,拥塞窗口从8KB增长到32KB所需经过的时间最长是( D )。
B.10ms B. 30ms C. 60ms D. 120ms
解析:
TCP拥塞控制慢开始,加法增大,快重传,快恢复。
由于慢开始门限ssthresh可以根据需求设置,为了得到最长时间,可以把门限设置的小于8KB,这样只要不出现拥塞,一开始到后面都是加法增大(每经历一个传输轮次(RTT),拥塞窗口逐次加1)。
因此(32 - 8)* 5ms = 120 ms。
- 【2019统考真题】某客户通过一个TCP连接向服务器发送数据的部分过程如下图所示.客户在t0时刻第一次收到确认序列号ack_seq=100的段, 并发送序列号seq=100的段, 但发生丢失.若TCP支持快速重传, 则客户重新发送seq=100段的时刻是( C ) 。
A.t1 B. t2 C. t3 D. t4
tcp规定超过三个冗余ACK就立即重传
14.【2019统考真题】若主机甲主动发起一个与主机乙的TCP连接, 甲、乙选择的初始序列号分别为2018和2046,则第三次握手TCP段的确认序列号是( D ) 。
A.2018 B. 2019 C. 2046 D. 2047
第三次握手的TCP段由甲发出,在接收到乙发来的序号2046后,甲应该发出确认号2047。
15.【2012统考真题】若用户1与用户2之间发送和接收电子邮件的过程如下图所示,则图中①、②、③阶段分别使用的应用层协议可以是( D ) 。
A.SMTP、SMTP、SMTP B. POP3、SMTP、POP3
C. POP3、SMTP、SMTP D. SMTP、SMTP、POP3
解析:
SMTP 采用“推”的通信方式,在用户代理向邮件服务器及邮件服务器之间发送邮件时, SMTP 客户主动将邮件“推”送到 SMTP 服务器。而 POP3 采用“拉”的通信方式,当用户读取邮件时,用户代理向邮件服务器发出请求,“拉”取用户邮箱中的邮件。
16.【2016统考真题】假设所有域名服务器均采用迭代查询方式进行域名解析。当主机访问规范域名www.abc.xyz.com的网站时,本地域名服务器在完成该域名解析的过程中,可能发出的DNS查询的最少和最多次数分别是(C)
A.0,3 B. 1,3 C. 0,4 D. 1,4
解析:
最少:本地有缓存——0
最多:本地无缓存-根+顶级(.com)+权限(xyz.com)+权限(abc.xyz.com)=4
- 【2018统考真题】无须转换即可由SMTP直接传输的内容是( D )。
A. JPEG图像 B.MPEG视频 C. EXE文件 D. ASCII文本
解析
SMTP本来就是为传送ASCII码而不是传送二进制数据设计的。因此,选项D正确。
- 【2014统考真题】使用测览器访问某大学的Web网站主页时,不可能使用到的协议是( D )。
A.PPP B. ARP C. UDP D. SMTP
SMTP是邮件协议,属于应用层协议,但不用于浏览网站。
- 【2015统考真题】某浏览器发出的HTTP请求报文如下:
下列叙述中,错误的是( C )。
A. 该浏览器请求浏览index.html
B. Index.html存放在www.test.edu.cn上
C.该浏览器请求使用持续连接
D. 该浏览器曾经测览过www.test.edu.cn
20.某IEEE802.11 无线局域网中,主机H与AP之间发送或接收CSMA/CA帧的过程如下图所示。在H或AP发送帧间间隔时间(IFS)中,最长的是( D )。
A. IFS4 B. IFS3 C. IFS2 D. IFS1
二、综合题
- 网络允许的最大报文段长度为128字节,序号用8比特表示,报文段在网络中的寿命为30s,则每一条TCP连接所能达到的最高数据传输速率为?
2【2016统考真题】假设下图中的H 3访问Web服务器S时, S为新建的TCP连接分配了20KB(K=1024) 的接收缓存, 最大段长MSS=1KB,平均往返时间RTT.=200ms。H3建立连接时的初始序号为100, 且持续以MSS大小的段向S发送数据, 拥塞窗口初始阈值为32KB; S对收到的每个段进行确认, 并通告新的接收窗口。假定TCP连接建立完成后, S端的TCP接收缓存仅有数据存入而无数据取出。请回答下列问题:
1)在TCP连接建立过程中, H 3收到的S发送过来的第二次握手TCP段的SYN和ACK标志位的值分别是多少?确认序号是多少?
2)H3收到的第8个确认段所通告的接收窗口是多少?此时H3的拥塞窗口变为多少? H3的发送窗口变为多少?
3)H3的发送窗口等于0时,下一个待发送的数据段序号是多少?H3从发送第1个数据段到发送窗口等于0时刻为止,平均数据传输速率是多少?(忽略段的传输延时。)
4)若H3与S之间通信已经结束,在t时刻H3请求断开该连接,则从t时刻起,S释放该连接的最短时间是多少?
解答: (1) 第二次握手TCP段的SYN=1, (1分)ACK=1; (1分) 确认序号是101。 (1分)
(2)题目规定S对收到的每个段(MSS大小的段)进行确认,并通告新的接收窗口,而且TCP接收缓存仅有数据存入而无数据取出。H3收到的第8个确认段所通告的接收窗口是20-8=12KB;(1分) 在慢开始算法里,发送方H3先设置拥塞窗口cwnd=1KB,接下来每收到-一个对新报文段的确认就使发送方的拥塞窗口加1KB。H3共收到8个确认段,所以此时H3的拥塞窗口变为1+8=9KB; (1分) 发送窗口=min{拥塞窗口,接收窗口},所以H3的发送窗口变为min{9, 12}=9KB。 (1分)
(3) TCP是用字节作为窗口和序号的单位。当H3的发送窗口等于0KB时,也就是接收窗口等于0KB时,下一个待发送段的序号是20K+101=20x1024+101=20581; (1分) H3从发送第1个段到发送窗口等于0KB时刻为止,经过五个传输轮次,每个传输轮次的时间就是往返RTT,因此平均数据传输速率是20KB/(5x200ms)=20KB/s=20.48kbps。 (1分)
(4)通信结束后,H3向S发送连接释放报文段。S收到H3的连接释放报文段后,马上发出确认报文段。此时S已经没有数据需要传输,于是它也马上发出连接释放报文段。H3在收到S的连接释放报文段后,发出确认报文段。S在收到这份确认后就释放TCP连接。
因此从时刻起,S释放该连接的最短时间是:
H3的连接释放报文段传送到S的时间+S的连接释放报文段传送到H3的时间+H3的确认报文段传送到S的时间=1.5X200ms=300ms。 (1分)
3.在如下条件下,计算使用非持续方式和持续方式请求一个Web页面所需的时间:
1)测试的RTT的平均值为150ms,一个gif 对象的平均发送时延为35ms。
2)一个Web页面中有8幅gif图片,Web页面的基本HTML文件、HTML请求报文、TCP握手报文大小忽略不计。
3)TCP三次握手的第三步中捎带一个HTML请求。
4)使用非流水线方式。
每次进行TCP三次握手时,前两次握手消耗一个RTT=150ms, 第3次握手的报文段捎带了客户对HTML文件的请求,故请求和接收基本HTML文件耗时一个RTT=150ms(其大小忽略不计,则发送时延为0ms)。 在非持久连接模式下:
第一次建立TCP连接并传送htmI文件所需的时间thtm1=(150+ 150)ms=300ms
每一次建立TCP连接并传送一个gir文件所需的时间gir=(150+ 150+35)ms=335ms 所以总时间总=tm+tgirx 8=(300+335x 8)ms=2980ms
在持久连接模式下: 只需要建立一次TCP连接,然后传送html文件和8个gir文件。
总时间总=建立Tcp+thtml+girx8=150+ 150+(150+35)x 8=1780ms
开放原子开发者工作坊旨在鼓励更多人参与开源活动,与志同道合的开发者们相互交流开发经验、分享开发心得、获取前沿技术趋势。工作坊有多种形式的开发者活动,如meetup、训练营等,主打技术交流,干货满满,真诚地邀请各位开发者共同参与!
更多推荐
所有评论(0)