Linux c==网络编程的理论知识-三次握手,四次挥手 (25)

来源:互联网 发布:教育培训软件 编辑:程序博客网 时间:2024/05/23 21:04

详细描述三次握手,四次挥手过程及作用,优缺点

(建立连接协议)三次握手的过程
(1) 客户端发送一个带SYN标志的TCP报文到服务器,这是三次握手过程中的报文1
(2) 服务器端回应客户端的,这是三次握手过程中的第2个报文,这个报文同时带ACK标志和SYN标志。表示对刚才客户端SYN报文的回应,同时又标志SYN给客户端,询问客户端是否准备好进行数据通讯
(3) 客户必须再次回应服务端一个ACK报文,这是报文3。

三次握手的作用
检测双方的发送和接受能力是否正常

三次握手的优点:
如果未收到客户端的连接确认,服务器就不会建立该连接。从而避免浪费服务器的资源。
三次握手的缺点:
①让攻击者有机可趁,通过TCP协议的缺陷,可以发送大量的伪造源地址的攻击报文,不回应ACK包,服务器默认重试五次,就可能造成目标服务器中的队列被占满,阻止其他合法用户进行访问。
②不能保证及时性,易被拦截

(连接终止协议)四次挥手的过程
(1) TCP客户端发送一个FIN,用来关闭客户到服务器的数据传送(报文段4)
(2) 服务器收到这个FIN,他发回一个ACK,确认序号为收到的序号加1(报文段5),和SYN一样,一个FIN将占用一个序号
(3) 服务器关闭客户端的连接,发送一个FIN给客户端(报文段6)
(4) 客户端发回ACK报文确认,并将确认序号设置为收到序号加1(报文段7)

四次挥手的作用
全双工的工作模式下,需要双方均关闭连接

四次挥手的优点:
四次挥手的缺点:

0 0
原创粉丝点击