TCP三次握手四次握手详解

首先先简单介绍一下tcp包首部的6个标志位,SYN是同步序号,用于发起一个tcp连接,FIN标志发送方完成数据收发,ACK标志确认序号,RST标志复位连接,PSH标志尽可能快的将数据送往接手程序,URG紧急指针标志。


下面详细介绍一下tcp连接时发的三次握手和关闭连接时的四次握手。


三次握手:

        1次: 客户端调用connect进行主动打开,这将发送一个SYN段用于指明客户端打算连接的服务器端口以及初始序号。

2次:服务器发回一个ACK段进行确认,包含服务器初始序号的SYN报文段作为应答,同时,将确认序号设置为客户的初始序号加1以对客户的SYN报文段进行确认。确认序号是发送这个ACK的一端所期待的下一个序号。

3次:客户端必须将确认序号设置为服务器的初始序号加1 以对SYN报文段进行确认。


四次握手:

1次:某个应用程序首先调用close执行主动关闭,该端的tcp将发送一个FIN分节,表示数据发送完毕。

2次:接收到这个FIN的对端执行被动关闭。这个FIN由tcp进行确认,并发送一个确认的ACk包。接收到FIN的一端将在套接字上收到一个文件结束符,表示接收端在这个连接上已无数据可收。

3次:一段时间后,接收进程将调用close关闭套接字,这导致接收进程也发送一个FIN。

4次:原发送端(执行主动关闭的那一端)确认这个FIN。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值