老样子,在开始正式的讲解TCP四次挥手之前,先来一段小对话来帮助大家更好的理解。 对话结束,下面正式的开始介绍TCP四次挥手连接。 看完上面那个小对话,下面开始正式的来看TCP四次挥手: 2.确认号ack: 3.终止FIN 因为在建立TCP连接(三次握手),连接后的数据传输中,客户和服务器都会为该TCP连接分配TCP缓存和变量。(在分配TCP缓存和变量中,会使得TCP容易收到SYN洪泛的拒绝服务攻击)。所以在连接结束后(TCP四次挥手),客户和服务器中的资源(即缓存和变量)都应该被释放。 因为TCP是全双工的通信机制(全双工通信信道:双方都可以同时发送和接收),每个方向必须单独进行关闭,并且客户和服务器任何一个都可以选择关闭该TCP连接。 客户端首先发出一个关闭连接命令(FIN = 1),也就是向服务器端发送一个首部带有FIN比特标志位的TCP报文段,此时客户端不会再向服务器发送数据,并且会等待服务器返回确认报文段(ACK报文)。 服务器端接收到了该报文段后,就向客户端发送回一个确认报文段(ACK = 1);但是服务器端此时还没有进入关闭状态,会把剩下没有发送的数据继续发给客户端。 服务器端发送完剩下未发送的数据之后,同样也会向客户端发送一个首部带有FIN比特标志位的TCP报文段,此时服务器端不会再向客户端发送数据,同样会等待客户端返回确认报文段。 客户端收到该报文段后,客户TCP会对该报文段进行确认,并且会进入定时等待状态,因为假若ACK丢失,该状态会让TCP客户端重新发送最后的确认报文ACK。经过该状态之后,TCP连接就正式关闭了,客户端所有的资源(变量,缓存包括端口号)将会被释放。 TCP四次挥手关闭连接的规则如下: SYN洪泛攻击也叫DoS攻击,利用了TCP三次握手建立连接的特点。攻击者发送大量的伪造TCP SYN报文段,而不完成去第三次握手的步骤,导致服务器不断为这些半开连接分配资源(缓存,变量),导致了服务器的连接资源被消耗殆尽。TCP四次挥手断开连接
1.趣谈TCP四次挥手
下面展示 对话情景
。---------------------------------------------------------------------- 对话介绍: 角色:祖安人,萌新 背景:经过了三次对话之后,祖安人和小朋友进入了选择英雄界面。祖安人面带微笑 的让小萌新选择了一个“扫把头”的英雄,而祖安人选择了“鲶鱼”来辅助萌新。 进入游戏界面后,祖安人开始了和萌新友好的互动 ...... ----------------------------------------------------------------------
游戏结束,祖安人和萌新各回各家。
2.断开TCP连接:TCP四次挥手
这里再复习一下seq,FIN,ACK:
1.序号seq:占32比特,也就是4个字节。一个报文段的序号是该报文段首字节的字节流编号。
占4个字节。确认号就是主机正在等待的数据的下一个字节序号。 例如:客户发送的第一个报文段的序号 seq = 99;那么服务器发送的报文段的 确认号: ACK= 100
FIN=1时,表示数据已全部传输完成,发送方不会再传输数据,并且要求释放当前 连接。 FIN=0,正常传输数据。
①为什么需要断开TCP连接?
②为什么需要四次挥手断开TCP连接?
分析四次挥手:断开连接
定时等待状态:TIME_WAIT,所消耗的时间有30秒、1分钟或者2分钟,一般为2分钟 (MSL)。
总结
3.小知识:SYN洪泛攻击
本网页所有视频内容由 imoviebox边看边下-网页视频下载, iurlBox网页地址收藏管理器 下载并得到。
ImovieBox网页视频下载器 下载地址: ImovieBox网页视频下载器-最新版本下载
本文章由: imapbox邮箱云存储,邮箱网盘,ImageBox 图片批量下载器,网页图片批量下载专家,网页图片批量下载器,获取到文章图片,imoviebox网页视频批量下载器,下载视频内容,为您提供.
阅读和此文章类似的: 全球云计算