首页 > 试题广场 >

客户端C还可以向服务器S发送的最大字节数是?

[单选题]
客户端C和服务器S之间建立了一个TCP连接,TCP最大段长度为1KB,客户端C当前的拥塞窗口是16KB,向服务器S连续发送2个最大段之后,成功收到服务器S发送的第一段的确认段,确认段中通告的接受窗口大小是4KB,那么此时客户端C还可以向服务器S发送的最大字节数是:
  • 3KB
  • 4KB
  • 15KB
  • 16KB
B: 仅个人理解,若有错误请大神指出!
刚开始觉得选A,想了想还是觉得应该是B(窗口值作为接收方让发送方设置其发送数据的依据)
因为窗口值告诉对方,从本报文段首部中的确认号算起,接收方目前允许对方发送的数据。既然服务器发送了接受窗口为4k,则客户端就只能以此为依据发送4kb,难道他自己还要做个减法吗?这就与协议规定的不一致了,若有错误请大神指出!
发表于 2015-09-06 16:55:28 回复(4)
这答案有问题吧,求解释
发表于 2015-09-06 16:10:51 回复(1)
这题不是A吗?拥塞窗口和接受窗口取最小值,所以目前客户端还能发送4kb,但是由于已经发送了第二个段,且第二段没超时,4-1=3啊?
编辑于 2015-09-06 16:19:41 回复(7)
接收方回复可接受4k,那么发送方还没有收到第二段确认的时候,认为接收方也是在没有收到第二段数据的时候回复的确认,但是发送方知道自己已经发送了第二个1k,所以还能再发送3k。
发表于 2015-10-12 15:19:08 回复(3)
可以,唯一作对的题。。
发表于 2016-07-21 11:28:22 回复(5)
正确解析:发送方的发送窗口的上限值取接收方窗口和拥塞窗口中较小的一个,于是发送窗口为MIN{4,16},由于发送方还没有收到第二个最大段的确认,所以4KB-1KB=3KB

发表于 2016-07-18 11:35:57 回复(1)
A
C向S发了两个2个最大段,也就是2个1KB,然后收到了S对第一段的确认,接收窗口为4KB。
也就是说,S在没收到C发送的第2个1KB的情况下,还剩4KB,所以C还可以发送的就是4-1=3KB
发表于 2016-10-12 12:21:32 回复(0)
注意题目,第一次接收确认后,窗口变成4KB,因为还有1KB的数据没有确认,所以还能向服务器发送的最大字节数为3KB
发表于 2016-06-23 10:39:09 回复(0)
我觉得这道题应该选A,是3KB,2010年计算机联考中有一到类似的题,答案就是min{拥塞窗口大小,接收窗口大小} - 已发送字节。
发表于 2015-09-06 17:19:21 回复(0)
接收方回复可接受4k,那么发送方还没有收到第二段确认的时候,认为接收方也是在没有收到第二段数据的时候回复的确认,但是发送方知道自己已经发送了第二个1k,所以还能再发送3k。
发表于 2017-04-04 20:33:59 回复(1)

成功收到服务器S发送的第一段的确认段是关键,也就是表明已经成功发送1k了

发表于 2024-06-18 11:10:35 回复(0)
在计算客户端C还能向服务器S发送的最大字节数时,需要考虑两个窗口:**拥塞窗口**和**接收窗口**。 给定条件: - TCP最大段长度(MSS)为1KB。 - 客户端C的拥塞窗口为16KB。 - 客户端C已经向服务器S发送了2个最大段(2KB)。 - 服务器S通告的接收窗口大小为4KB。 步骤如下: 1. **确定拥塞窗口和接收窗口**: - 拥塞窗口:16KB - 接收窗口:4KB 2. **计算当前已发送但未确认的数据量**: - 客户端C已经发送了2个最大段(2KB)。 - 收到第一个段的确认,但没有收到第二个段的确认。 - 因此,未确认的数据量为1KB。 3. **计算有效窗口(Effective Window)**: 有效窗口是拥塞窗口和接收窗口的最小值减去当前未确认的数据量。 - 有效窗口 = min(拥塞窗口, 接收窗口) - 已发送但未确认的数据量 - 有效窗口 = min(16KB, 4KB) - 1KB - 有效窗口 = 4KB - 1KB - 有效窗口 = 3KB 因此,此时客户端C还可以向服务器S发送的最大字节数是3KB。
发表于 2024-05-15 21:22:58 回复(0)
注意题目,第一次接收确认后,窗口变成4KB,因为还有1KB的数据没有确认,所以还能向服务器发送的最大字节数为3KB
发表于 2022-11-27 14:54:04 回复(0)
接收方回复可接受4k,那么发送方还没有收到第二段确认的时候,认为接收方也是在没有收到第二段数据的时候回复的确认,但是发送方知道自己已经发送了第二个1k,所以还能再发送3k。
发表于 2017-07-17 22:23:40 回复(0)
连续是两个1kb啊,还以为第二个是2kb了
发表于 2017-03-13 19:11:17 回复(0)
这题也不好做啊。第二个1KB的报文可能还在传输过程中, 当收到第一个确认字段,表明对方还能接收4KB大小,所以我这儿也只能发送3KB大小,才保证对方缓冲区不会满
发表于 2016-07-31 12:17:08 回复(0)
这里最大本来应该是5,由于对第一个进行确认了,所以还可以发送4,但是由于已经发了2个了,所以还可以发送的就是4-1=3了
发表于 2015-09-11 15:23:06 回复(0)
在发送两个报文前窗口大小应该是5,发送完2个报文,就只能发送3个报文了。当接收到一个报文ACK后窗口变为4,接收到另一个ACK后窗口大小变成3。虽然接收到第一个报文ACK后窗口是4,但是还有一个ACK没有收到,所以还能发送3个报文。
发表于 2015-09-07 10:25:07 回复(0)
TCP标准说不建议窗口的前沿缩小,当窗口已经是16,再接收到窗口大小为4时,会变成4吗?
发表于 2015-09-06 18:29:06 回复(0)
滑动窗口4k,1k未确认,所以还能发送3k?
发表于 2015-09-06 17:54:31 回复(0)