2020-07-18 17:06:09
TCP(Transmission Control Protocol)传输控制协议,是一种面向连接的,可靠的,基于IP的传输层协议。它的主要目地是为数据提供可靠的端到端的传输。
上一节学习了UDP协议,可以知道UDP协议非常简单,而且容易实现。但是其可靠性较差,一旦将数据包发出,将无法知道对方是否收到。为了解决这个问题,TCP协议就诞生了。使用TCP协议,可以提供网络的安全性。因为使用TCP协议传输数据时,每发出一个数据包都要求确认。如果其中有一个数据包丢失,就收不到确定包,发送方就知道应该重发这个数据包。这样TCP协议就保证了数据的安全性。
上图就是TCP协议三次握手建议的连接。 其中Seq表示请求序列号,Ack表示确认序列号,SYN和ACK为控制位
第一次握手第一次握手建立连接时,客户端向服务器发送SYN报文(Seq=x, SYN=1),客户端进去SYN_SENT状态, 等待服务器确定。
第2次握手首先,服务器收到客户端的请求,向客户端回复一个确认信息(Ack = x + 1)
其次,服务器再次向客户端发送一个SYN包(seq=y)建立连接请求,此时服务器进去SYN_RECV状态
第3次握手第三次握手客户端收到服务器的回复(SYN+ACK报文)。此时,客户端向服务器端发送ACK,此包发送完毕后客户端和服务器端进入ESTABLISHED状态。完成三次握手
在TCP通信中,当每次通信完毕后都会终止连接。该过程包含4个数据包,并且用一个FIN标志来表明连接的终结。
TCP断开需要四个步骤:
客户端通过发送一个设置了FIN和ACK标志的TCP数据包,告诉服务器通信已经完成服务器收到客户端的数据后,发送一个ACK数据包来响应客户端
服务器再次向客户端传输一个自己的FIN/ACK数据包
客户端手动啊服务器的FIN/ACK包后,响应服务器一个ACK数据包。然后结束通信。
答: 因为在客户端与服务器建立连接时,当收到客户端发送 的SYN数据后,是把ACK/SYN放在一起发送给客户端的。 但是当断开连接时,当收到客户端发送的FIN数据后,只能说明数据发送完毕,客户端不再发送数据,但是服务还是连接的。只能说明客户端没有数据发送给服务端了,但不代表服务端没有数据要发送给客户端了。当服务器所有的数据都发送完毕后,才会发送FIN/ACK数据,请求断开连接。
Wireshark如何捕获网络流量数据包
06-02
为什么Wireshark无法解密HTTPS数据
03-21
WinXP 如何重置TCP/IP协议?
05-01
IdeaPad Y330系列改装XP后摄像头图像颠倒180度的案例分析
02-18
IdeaPadY470在win7系统下外接HDMI无法输出声音的案例分析
03-16
KVM+Qemu+Libvirt实战
04-24
MySQL线程处于Waiting for table flush状态的分析
07-05
Redis出现Could not get a resource from the pool错误关于连接数的分析
02-15
keepalived VRRP协议与选举算解析
04-25
php-fpm性能优化实例分析
05-13
postgresql的远程链接出错原因分析
02-17
万全T168服务器类似救护车报警声故障分析
04-03
启动报错Error 1962的原因分析及解决方法
05-12
在线播放视频时,全屏出现画面卡、死机等现象的案例分析
04-12
天逸F41系列笔记本玩魔兽争霸蓝屏死机的案例分析
05-19
机器学习之数据探索——数据质量分析
03-14
网络传输协议
06-25
育碧是如何做AI的?《全境封锁》敌人AI设计思路分析
05-30
Python—网络通信编程之TCP非阻塞通信(socketserver)
07-05
linux 下抓包命令 TCPdump TCPflow
03-03
Wireshark 64位 v2.6.5.0
56.78 MB
下载协议分析工具下载
1.2M
下载Develve(数据统计分析软件) v4.5.0.0 绿色版
4.4MB
下载HiDownload(多协议下载工具)V8.24 破解版
10.5M
下载Kainet LogViewPro(网站日志分析软件) v3.19.4 免费版
5.9M
下载Rank Tracker(网站数据分析工具) v8.32.5 破解版
308.1M
下载SqlCel(数据处理分析软件) v2.2 官方版
16.7M
下载ansys(限元分析软件)v12.1.17 官方版
12.3GB
下载visio2003(分析辅助软件)2003 官方版
51.7M
下载印Plus分析诊断系统下载
55.3M
下载飞狐股票软件(股票行情分析工具) 3.0 免费版
23.5MB
下载AbyssMedia tuneXplorer
2.0M
下载Alternate DLL Analyzer下载
543KB
下载Disk Analyzer Pro下载
4.2M
下载WizTree中文版
5.1M
下载Xinorbis下载
25.9M
下载dnaman下载
15.6M
下载pidgin下载
8.27M
下载