TCP连接管理机制(三次握手、四次挥手)
1)三次握手可以形象的记为
客户端说:我要和你建立连接
服务器端说:可以,什么时候建立连接
客户端回答:就现在
2)为什么要三次握手而不是一次或者两次?一次或两次握手会出现什么情况?
TCP是一个面向连接的协议,而面向连接是为了保证传输的可靠性
如果只是一次"握手",客户端发出请求建立连接的报文之后,就认为建立连接了,于是就要发出数据。但是请求连接的报文若是在网络中丢失或者是到达服务器端后,服务器无法建立连接,这样发送的数据就不能保证可靠性。
若是两次"握手",1)客户端发出的请求连接的报文在网络中没有丢失,服务器端发出的同意建立连接的报文也正常发送到客户端,于是连接建立成功,皆大欢喜。
2)客户端发出的请求连接的报文在网络中没有丢失,服务器端就不会发出同意建立连接的报文,于是连接没有建立,这样不影响双方,最多只是重新进行连接
看了前两种情况,是不是觉得两次"握手"也是可以的,但是,还有一种情况是
3)客户端发出的请求连接的报文在网络中没有丢失,服务器端发出的同意建立连接的报文却在网络中丢失,这时,客户端没有收到收到服务器端的确认报文,认为连接没有建立成功&#