传输控制协议,运行在传输层,面向连接的可靠的协议
三次握手的目的是为了建立连接(整个过程是由内核实现的)
第一次握手:客户端向服务器发送一个请求(告诉服务器我想跟你建立连接),此时发送一个SYN包(同步序列号)和一个ISN(初始化序列号,随机生成的,不能设置为固定值,因为这样容易被攻击者猜出后续序列号,从而遭到攻击)
此时,服务器端可以确认客户端的发送能力和自己的接收能力都是正常的
第二次握手:服务器向客户端发送一个ACK包(表示发来的数据已确认接收无误),ACK=ISN+1,还有一个服务器端自己的ISN
此时,客户端可以确认服务器端的接收能力和发送能力、自己的接收和发送能力正常
第三次握手,客户端向服务器发送ACK包,ACK=服务器ISN+1
此时,服务器端可以确认客户端的接收能力、自己的发送能力正常
三次握手结束之后,可以正常发送数据了
模拟一下:
1、开启抓包命令(只抓经过接口ens33并且端口为80的包):
-nn表示地址和端口号都以数字显示,而不是以*或者localhost显示
2、模拟与百度建立一个连接
![]()
3、查看抓到的包

本文介绍了TCP协议作为传输层的面向连接、可靠的协议,并详细阐述了三次握手的过程,包括客户端与服务器端在每次握手时的数据交换,确保双方的发送和接收能力正常,最终建立可靠的数据传输连接。
最低0.47元/天 解锁文章
38万+

被折叠的 条评论
为什么被折叠?



