Python -- TCP协议的三次握手与四次挥手

8.4 TCP协议的三次握手,四次挥手

客户端与服务端第一次建立通信联系需要三次 ' 握手 '

客户端向服务端发送建立连接请求,并给服务端发送一段序列号,服务端接收到请求之后,返回给客户端确认信号并返回建立接请求和序列号,建立连接,然后客户端再返回给服务端确认信号.

TCP协议为什么要进行 "三次握手"?

TCP协议在建立连接时,需要确认通信双方的收发信息的能力都是正常的,因此需要进行多次验证,俗称"三次握手",因此TCP协议也可以称为 " 三次握手协议 "

建立的链接不能一直连接着

四次挥手

数据发送完毕,软件也要关闭,客户端与服务端先断开连接(也有服务端与客户端断开连接)发送一个finish和序列号,服务端接收到信号,给客户端返回一个确认信息,断开客户端到服务端的连接.但是服务端到客户端的连接还存在,然后服务端还可以给客户端发送一个finish和序列号,客户端接收到服务端发送的信息,确认断开连接,再返回给服务端确认信息.

syn洪水攻击 : 黑客会虚拟很多的假IP,然后访问你的服务器. 服务器中有 半连接池:有缓冲的效果

8.5 UDP 与 TCP 协议的区别

TCP协议:好人协议,流式协议

  • 优点: 稳定安全.
  • 缺点: 传输效率低,传输速度相对慢
  • 使用TCP的应用: Web浏览器,文件传输程序

UDP协议:面向数据报协议,无链接协议

  • 优点:效率高,传输快
  • 缺点:不安全,不是面向连接的,不可靠,容易丢包
  • 使用UDP的应用:域名系统(DNS),视频流,IP语音(VoIP),微信qq
原文地址:https://www.cnblogs.com/Agoni-7/p/11228311.html