b2科目四模拟试题多少题驾考考爆了怎么补救
b2科目四模拟试题多少题 驾考考爆了怎么补救

TCP三向握手和四波浪潮的摘要(过程,常见问题,将要发生的攻击以及预防方法)

电脑杂谈  发布时间:2020-03-24 22:14:29  来源:网络整理

tcp 三次握手_三次握手tcp_tcp三次握手超时

三向握手

首先定义两个定义:

1,客户端是数据的发送者

2,服务器是数据接收者

好的,这是三向握手的摘要:

1,客户端希望将数据发送到服务器并请求连接. 此时,客户端希望服务器发送数据包,其中的同步位(SYN)

设置为1,表示客户端申请TCP连接,序列号为j.

2,当服务器从客户端接收到数据包时,解析发现同步位为1,则知道客户端要恢复TCP连接,因此添加了当前客户端的IP和端口到未连接的队列并回复客户端以接受连接请求,我希望客户端发送数据包,

同步位为1,确认位ACK = j + 1表示服务器已准备好分配资源,并向客户端发起连接请求,请求客户端分配资源以建立TCP连接. / p>

3,客户端向服务器返回ACK,并分配资源以建立连接. 服务器收到此确认后,还会分配资源以建立连接

所以问题来了

*为什么需要第三次握手

*如果第三次握手失败了怎么办?

tcp 三次握手_tcp三次握手超时_三次握手tcp

*黑客可以利用三向握手中的哪些缺陷来攻击服务器?

*如何防止这种攻击?

一个接一个地回答答案.

1,为什么我需要第三次握手?

A: 如果没有第三次握手,则可能发生以下情况:

*如果只有两次握手,则服务器在接收到客户端的SYN = 1连接请求数据包后,它将分配资源并向客户端发送确认ACK应答数据包.

*

然后,如果在客户端与服务器之间建立连接的过程中由于网络不畅导致通信链路中存在残留数据包,即客户端发送给服务器的数据包请求建立连接是由于数据链接. 拥塞或质量较差会导致连接请求数据包仍在网络链路上,这些残留的数据包会造成以下危害

*危害:

当客户端与服务器建立连接时,在发送数据并关闭TCP连接之后,如果链接中的剩余数据包到达服务器,服务器将认为客户端已重新发送了连接请求,并以ACK封包回复并分配资源. 并且一直在等待客户端发送数据,这将导致

服务器资源被浪费了.

2,如果第三次握手失败该怎么办?

回答: 客户端与服务器之间的第三次握手失败后,即客户端发送给服务器的确认连接建立段无法到达服务器,服务器在等待客户端回复时超时带有ACK的服务器将向客户端发送一个RTS段,并进入关闭状态,即,不等待客户端为第三次握手重传ACK数据包,而是直接关闭连接请求. 这主要是为了防止洪水攻击,也就是说,恶意分子将许多IP伪造给服务器,以发送连接请求,从而填满服务器的未连接队列并浪费服务器资源.

tcp 三次握手_三次握手tcp_tcp三次握手超时

3,黑客可以用来攻击服务器的三向握手的缺陷是什么?

答案: 黑客模仿IP向服务器发送大量TCP连接请求数据包,从而将服务器的半连接队列(上面提到的未连接队列,即服务器将客户端添加到半连接队列)中.

接收到连接请求SYN之后的连接,队列已满,导致服务器拒绝其他正常的连接请求.

拒绝服务攻击

如何防止这种攻击?

1,缩短服务器收到客户端SYN消息即SYN后的连接等待时间.

超时时间,即服务器收到SYN段并最终放弃此连接请求的超时时间.

降低超时设置,可以将服务器负载减少两倍,但是SYN太低.

超时可能会影响正常的TCP连接的建立. 一旦网络不畅通,可能会导致客户端连接请求失败

2,SYN cookie + SYN代理无缝集成(更好的解决方案)

* SYN

cookie: 服务器收到客户端的SYN时,不会立即分配资源,而是根据客户端发送的SYN数据包计算cookie值. 此cookie值用于存储服务器返回给客户端的SYN + ACK数据包. 在客户端为第三次握手返回ACK数据包之后,执行检查中的初始序列号. 如果检查成功,则服务器分配资源并建立连接.

* SYN代理,充当服务器-客户端连接的代理,而不是在服务器和客户端以及SYN之间建立三向握手连接

tcp 三次握手_tcp三次握手超时_三次握手tcp

代理和客户端建立三向握手连接后,请确保它是正常的TCP连接,而不是TCP Flood攻击,然后是SYN

proxy与服务器建立三向握手连接,充当连接客户端和服务器的代理(网关?). (类似于VPN. )

挥舞四次

以下是这四个浪潮的摘要:

1,(我的客户无话可说)

当发送了要由客户端发送的数据时(这里是从服务器接收到的,在接收到由clien发送的最后一个数据包的确认ACK包之后),请求服务器关闭连接,因此客户端发送向服务器的请求发送FIN数据包表示已发送客户端数据,并且应用程序已断开连接. 然后输入自己

等待结束连接状态FIN_WAIT-1

2tcp三次握手超时,(我的服务器知道您无话可说,但是您在等我,我不确定是否没有话要说,请等我答复)

服务器从客户端接收到FIN请求数据包时,它将向客户端发送确认ACK,并进入关闭等待状态(CLOSE

-WAIT). 此时,TCP连接服务器将向上层应用程序发送通知,指示是否已发送客户端数据以及是否需要向客户端发送数据. 此时,由于客户端没有要发送的数据,因此TCP连接已经处于半关闭状态. 同时,客户端从服务器收到确认消息后,将进入.

FIN-WAIT-2状态.

3,(我服务器的上层应用程序无话可说,我们可以断开连接)

TCP连接服务器从上层应用程序接收一条指令,指示没有数据要发送. 它将FIN请求数据包发送到客户端. 确认位ACK = 1表示客户端关闭连接请求,而FIN = 1表示服务器也准备断开TCP连接.

三次握手tcp_tcp三次握手超时_tcp 三次握手

4,*

(好的,然后断开连接. )***客户端从服务器接收到FIN数据包,知道服务器已准备好断开连接,并向服务器发送确认数据包ACK,告诉服务器可以关闭资源并断开连接. 同时,它进入TIME-WAIT阶段. 此阶段将持续2MSL(MSL: 网络链路中数据包的最长生存期). 等待2MSL后,客户端将关闭资源.

5. 从客户端收到最后一个确认的断开连接数据包后,serv将直接进入TCP关闭状态以恢复资源.

所以问题来了:

1,为什么要挥手四次

答案: 前两个浪潮是将客户端与服务器断开连接,后两个浪潮是将服务器与客户端断开连接. 如果没有第四波,将发生以下情况:

*

在发送FIN数据包并将ACK传送给客户端之后,服务器直接断开连接. 如果客户端未收到FIN数据包,则客户端将始终等待关闭. 这是为了确保TCP协议面向连接且安全. las.

*上面说明了为什么不是三波. 同样,两次浪潮也不安全. 无法保证服务器和客户端都能正确关闭连接以释放资源而不会造成资源浪费.

2tcp三次握手超时,为什么客户端在四次握手之后等待2MSL才释放资源并关闭连接?

答案:

*

如果服务器未收到客户的第四次确认段通知,则服务器将重新发送FIN段的第三次确认通知. 因此,客户端必须保留2MSL进行处理,并且可能会收到重复的邮件. 消息段.

*

使在先前建立的客户端-服务器通信或挥手期间由网络中断引起的卡住的段无效. 如果不等待2MSL,则在建立新连接后,您可能会收到以前连接的旧段,这可能会引起混乱.

在这里,TCP的三向握手和四次波浪都结束了. 以上总结纯属个人总结. 我想指出由于能力有限而引起的错误和遗漏,我将一一纠正它们.


本文来自电脑杂谈,转载请注明本文网址:
http://www.pc-fly.com/a/tongxinshuyu/article-151081-1.html

    相关阅读
      发表评论  请自觉遵守互联网相关的政策法规,严禁发布、暴力、反动的言论

      • 赵晓蔓
        赵晓蔓

        我发现一群喷子以喷为乐

      • 绪方贤一
        绪方贤一

        早都预料该公司要出事

      • 赵东阳
        赵东阳

        中国军方的处置还是得当的

      热点图片
      拼命载入中...