三次握手详解

1、Windows下查看端口号与进程号关系的命令
快捷键进入cmd

C:\Users\abs>netstat -ano

在这里插入图片描述

 C:\Users\abs>netstat -ano|findstr "6024"
 C:\Users\abs>tasklist | findstr "6024"

在这里插入图片描述

C:\Users\abs>tasklist

在这里插入图片描述
2.TCP三次握手详解
第一次握手:客户端发送syn包(seq=x)到服务器,并进入SYN_SEND状态,等待服务器确认;

SYN包没有携带任何数据,使用了报头中SYN标志位和Seq number字段,其中SYN=1标志请求建立一个连接

第二次握手:服务器收到syn包,必须确认客户的SYN(ack=x+1),同时自己也发送一个SYN包(seq=y),即SYN+ACK包,此时服务器进入SYN_RECV状态;

SYN+ACK包也没有携带任何数据,使用了报头中的SYN和ACK标志位,以及Seq Number 和 Ack Number字段,
其中SYN=1标志Server端同步初始顺序号,以便Server向Client发送信息。
ACK=1标志已确认收到SYN包,同时给出期望从Client端收到的下一个序号。
需要注意的是在第二次握手中还定义了动态窗口大小。

第三次握手:客户端收到服务器的SYN+ACK包,向服务器发送确认包ACK(ack=y+1),此包发送完毕,客户端和服务器进入ESTABLISHED状态,完成三次握手。
在这里插入图片描述

握手过程中传送的包里不包含数据,三次握手完毕后,客户端与服务器才正式开始传送数据。理想状态下,TCP连接一旦建立,在通信双方中的任何一方主动关闭连接之前,TCP 连接都将被一直保持下去。

3.四次挥手过程如下:
  1)客户端A发送一个FIN,用来关闭客户A到服务器B的数据传送。
  2)服务器B收到这个FIN,它发回一个ACK,确认序号为收到的序号加1。和SYN一样,一个FIN将占用一个序号。
  3)服务器B关闭与客户端A的连接,发送一个FIN给客户端A。
  4)客户端A发回ACK报文确认,并将确认序号设置为收到序号加1。
状态变化
在这里插入图片描述

评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值