TCP协议

2019-08-05  本文已影响0人  互联网中的一个咸鱼

TCP的特性

注意:TCP并不能保证数据一定会被对方接收到,因为这是不可能的,TCP能做到的是,如何有可能,就把数据递送到接收方,否则就(通过放弃重传并且中断连接这一手段)通知用户,因此准确来说TCP也不是100%可靠的协议,它所能提供的是数据的可靠递送和故障的可靠通知

三次握手是指建立一个TCP连接时,需要客户端和服务器发送三个包
三次握手的目的是客户端连接到服务器的指定端口,建立TCP连接,并同步连接双方的序列号和确认号,交换TCP窗口大小信息,在Socket编程中,客户端执行connect()中,将触发三次握手

第一次握手:建立连接时,客户端发送syn包(syn=j)到服务器,并进入SYN_SEND状态,等待服务器确认;
SYN:同步序列编号(Synchronize Sequence Numbers),请求同步
第二次握手:服务器收到syn包,必须确认客户的SYN(ack=j+1),同时自己也发送一个SYN包(syn=k),即SYN+ACK包,此时服务器进入SYN_RECV状态;
第三次握手:客户端收到服务器的SYN+ACK(确认同步)包,向服务器发送确认包ACK(ack=k+1),此包发送完毕,客户端和服务器进入ESTABLISHED状态,完成三次握手.
完成三次握手之后,客户端与服务器开始传输数据


image

四次挥手:
1.客户端向服务器发送一个请求断开连接的包
2.服务器回应客户端并发送一个确认的包
3.服务器向客户端发送一个请求断开的包
4.客户端回应服务器并发送一个确认的包

上一篇 下一篇

猜你喜欢

热点阅读