开始连接(三次握手)
首先确认双方收发功能是否正常
第一次握手
,服务端确认客户端的发送能力、服务端的接收能力。客户端发送一个SYN段,并指明客户端的初始序列号,即ISN(c).
第二次握手
,客服端确认服务端的接收、发送能力,客户端的接收、发送能力。服务端发送自己的SYN段作为应答,同样指明自己的ISN(s)。为了确认客户端的SYN,将ISN(c)+1作为ACK数值。这样,每发送一个SYN,序列号就会加1. 如果有丢失的情况,则会重传。
第三次握手
,服务端确认客户端的接收、发送能力,服务端的发送、接收能力。为了确认服务器端的SYN,客户端将ISN(s)+1作为返回的ACK数值。
确认之后,正式收发数据
结束连接(四次挥手)
第一次挥手
,客户端发送一个FIN段,并包含一个希望接收者看到的自己当前的序列号K. 同时还包含一个ACK表示确认对方最近一次发过来的数据。
第二次挥手
,服务端将K值加1作为ACK序号值,表明收到了上一个包。这时上层的应用程序会被告知另一端发起了关闭操作,通常这将引起应用程序发起自己的关闭操作。
第三次挥手
,服务端发起自己的FIN段,ACK=K+1, Seq=L
第四次挥手
,客户端确认。ACK=L+1
DOS 攻击
最基本的DoS攻击就是利用合理的服务请求(发送大量的SYN包)来占用过多的服务资源,从而使合法用户无法得到服务的响应。
DDOS 攻击
分布式拒绝服务攻击采取的攻击手段就是分布式的。
按照TCP/IP协议的层次可将DDOS攻击分为基于ARP的攻击、基于ICMP的攻击、基于IP的攻击、基于UDP的攻击、基于TCP的攻击和基于应用层的攻击。
参考
转载请保留原文链接: https://zodream.cn/blog/id/33.html