首页 > 试题广场 >

TCP的握手与分手,可能出现的情形有()。

[不定项选择题]
TCP的握手与分手,可能出现的情形有()。
  • 握手需要3次通信
  • 分手需要进行4次通信
  • FIN和ACK 在同一包里
  • ACK 和SYN 在同一包里
C正确,计算机网络书上有写
发表于 2016-07-24 14:40:34 回复(0)
更多回答


编辑于 2016-05-12 21:08:05 回复(2)
ABD

建立TCP需要三次握手才能建立,而断开连接则需要四次握手。整个过程如下图所示:



编辑于 2015-08-20 09:33:02 回复(4)
建议抓包分析
发表于 2019-06-12 10:34:33 回复(1)
ABD肯定是对的,c是因为在4次挥手的时候,发送方发送FIN时,接收方也要关闭,则可以在一个包同时发送FIN和ACK
且FIN_WAI1直接到TIME_WAIT就是同时接收FIN和ACK的结果
发表于 2018-01-03 22:06:39 回复(1)
答案应该是ABD,如果“FIN和ACK 在同一包里 ”,那TCP结束,三次挥手就可以了,就是一位FIN和ACK 不能在同一包里,所以才多了一次挥手!
发表于 2015-09-05 13:42:05 回复(2)
C不正确
发表于 2015-09-09 09:34:11 回复(0)
答案是有问题吧
发表于 2015-09-05 17:22:04 回复(0)
ABCD, C正确,理论上在接受到fin后,接收方恰好也要关闭连接,则可以在一个包内发送fin和ack(这从tcp包头格式可以看出是正确的,fin和ack不是在同一个bit位上的,所以为什么不能同时发),其次在tcp状态转移图中也可以看到从fin_wait1直接到time_wait的情况,这种情况就就同时接受到fin和ack的结果
发表于 2016-03-27 11:34:07 回复(4)

关于选项C,FIN和ACK在同一个包里:

是因为在四次挥手时,TCP/IP协议特有的延时应答捎带应答特性机制可能导致FIN和ACK在同一个包里。

延时应答保证了数据的传输最大化,捎带应答是在延时应答的基础上实现的。

因此,有些情况下ACK在发送时由于延时应答机制不会立刻发送,而会等待一段时间,且在这段时间内FIN包刚好准备就绪,系统就会在发送ACK包的同时捎带的发送FIN包,此时的4次挥手也就变成3次挥手了

至于为什么延时应答能提高数据的传输速率,不进行过多介绍

编辑于 2018-07-17 00:17:02 回复(0)

c如果正确,就不用四次挥手了,三次足够了


发表于 2019-04-11 00:02:28 回复(0)
建议自己抓包,找rfc看看 书上不够全面
发表于 2018-04-27 02:14:56 回复(0)
FIN和ACK 在同一包里
发表于 2017-04-09 20:26:26 回复(0)
C 正确
发表于 2016-08-10 14:39:14 回复(0)
C肯定是对的,实验是检验真理的唯一标准,tcpdump抓包看!!!
发表于 2016-07-30 11:24:16 回复(0)
发表于 2016-07-16 10:34:17 回复(0)
三次握手、四次挥手、ACK和SYN在第二次握手的时候,在同一包里,FIN和ACK不会再同一个包里
发表于 2016-06-27 19:27:51 回复(0)
FIN和ACK 在同一包里.
这个可以得吗? 求解答

发表于 2016-02-18 12:36:34 回复(0)
C明显错误

发表于 2015-09-09 16:49:53 回复(0)
FIN和ACK 在同一包里,那不就是TCP三次挥手了。。。。一般不都是FIN和ACK分开发送莫
发表于 2015-09-02 15:09:49 回复(2)