2 wjpaiinnngg wjpaiinnngg 于 2016.05.07 20:49 提问

为什么我的tcp关闭是三次挥手而不是四次挥手?

图片说明

我用tcpdump抓包,得到的是
1:客户端发送fin+ack
2:服务器发送fin+ack
3:客户端发送ack
其中,2中的fin+ack省去了服务器给客户端发送的ack
这种情况是不是出现在客户端也是服务器(即双方即都是服务器又是客户端)?
求大神解答?

4个回答

CSDNXIAON
CSDNXIAON   2016.05.07 20:52

TCP的三次握手和四次挥手
TCP的三次握手和四次挥手
TCP的三次握手/四次挥手
----------------------同志你好,我是CSDN问答机器人小N,奉组织之命为你提供参考答案,编程尚未成功,同志仍需努力!

wjpaiinnngg
wjpaiinnngg   2016.05.07 21:03

跪求大神解答!!!!!

qq_20246395
qq_20246395   2016.05.07 23:55

前面的ask 84不算在里面的吗。。。

wjpaiinnngg
wjpaiinnngg 前面的ack 84是确认再前面的seq 70:84啊,跟后面的FIN没关系的。。。
大约 2 年之前 回复
zhongli_csdc
zhongli_csdc   2016.08.19 20:32

因为201已无数据需要再发给23,所以回复23时添加了FIN标志,不用再单独发送一次FIN,所以只需要三次。

Csdn user default icon
上传中...
上传图片
插入图片
准确详细的回答,更有利于被提问者采纳,从而获得C币。复制、灌水、广告等回答会被删除,是时候展现真正的技术了!
其他相关推荐
TCP为什么是进行三次握手与四次挥手?
TCP是主机对主机层的传输控制协议,提供可靠的连接服务,采用三次握手确认建立一个连接。 (1)位码即tcp标志位:有6种标示:SYN(synchronous建立联机)、 ACK(acknowledgement 确认) 、PSH(push传送、ST(reset重置)、 URG(urgent紧急) 、Sequence number(顺序号码) Acknowledge number(确认号码)。
TCP协议中为什么三次握手,四次挥手(详解)!!!
建立TCP需要三次握手才能建立,而断开连接则需要四次握手。整个过程如下图所示: 先来看看如何建立连接的。 首先Client端发送连接请求报文,Server段接受连接后回复ACK报文,并为这次连接分配资源。Client端接收到ACK报文后也向Server段发生ACK报文,并分配资源,这样TCP连接就建立了。 那如何断开连接呢?简单的过程如下:
为什么是三次握手而不是两次握手为什么是四次挥手
为什么是三次握手捏:::          三次握手可以简单看做是客户发送请求,服务器对客户的请求进行确认,客户对服务器的确认再进行确认。          如果采用两次握手,假设下面这种情况,客户向服务器发送请求,服务器没有对客户的请求进行确认(因为网络的延迟他可能没有收到这个请求)。客户收不到这个确认于是过一段时间他在向服务器发起连接请求并顺利完成数据传输,但是过了一段时间这个请求到达了服
TCP三次握手与四次挥手的过程及原因
****本篇文章来彻彻底底的分析一下TCP三次握手与四次挥手的过程及原因。。。→_→****
Tcp为什么要三次握手四次挥手
client:黄河,server:长江 第一次:长江长江,我是黄河,听到请回答? 第二次:黄河黄河,我是长江,我听到你了,你能听到我吗? 第三次:长江长江,俺是黄河,我也能听到你,我要开始吐了。 其实第二次时黄河已经知道双方能通,但是长江还不知道自己的声音黄河能否收到,所以会有第三次黄河向长江的回应 参考:http://blog.chinaunix.net/uid-20726927-
TCP/IP三次我手四次挥手过程与对应状态转移图
作为互联网通讯的基础,TCP/IP协议建立连接与断开连接的过程非常重要,但是平时写代码的时候很难去关注到这些知识,今天恰好想去整理一下相关知识,发现了下面两张图比较好的解释了三次握手和四次挥手的过程,以及客户端和服务端相应的状态切换过程。TCP/IP协议建立连接的三次握手 客户端发送一个带SYN标志的TCP报文(报文1)到服务器端,表示希望建立一个TCP连接。 服务器发送一个带ACK标志和SYN标志
TCP四次挥手关闭读写通道
第一种解释: TCP协议的连接是全双工连接,一个TCP连接存在双向的读写通道。  简单说来是 “先关读,后关写”,一共需要四个阶段。以客户机发起关闭连接为例: 1.服务器读通道关闭 2.客户机写通道关闭 3.客户机读通道关闭 4.服务器写通道关闭 关闭行为是在发起方数据发送完毕之后,给对方发出一个FIN(finish)数据段。直到接收到对方发送的FIN,且对方收到了接收确认ACK之后
网络编程之TCP协议为啥是三次握手和四次挥手?
在学习TCP协议的时候,总是在强调三次握手,那么为什么是三次?而不是两次或者四次?(强迫症表示黑人问号????) 今天我们就来分析一下为什么是三次,下图是一次TCP通讯的时序 在这个例子中,首先客户端主动发起连接、发送请求,然后服务器端响应请求,然后客户端主动关闭连接。两条竖线表示通讯的两端,从上到下表⽰示时间的先后顺序,注意:数据从一端传到网络的 另一端也需要时间,所
为什么需要三次握手和四次挥手
syn(synchronous)同时的,同步的,在http中指建立请求的第一个包ack (acknowledgement) 确认的意思fin(finally) 我要最后一次啦,我暂时这样理解这个含义今天终于搞清楚了第四次的包是怎么回事,原来第四次的发送包不算在3次握手里面,第四次包是刷新window size用的,也就是告诉服务端根据当前网络,计算出来应该传输多少自己的数据才不会拥塞,是不是看到 ...
TCP为什么要四次挥手?
因为需要考虑半关闭状态。