您的位置:首页 > 理论基础 > 计算机网络

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

2016-12-06 12:36 344 查看

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

(建立连接协议)三次握手的过程

(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)

四次挥手的作用

全双工的工作模式下,需要双方均关闭连接

四次挥手的优点:

四次挥手的缺点:
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  linux c语言 服务器