TCP三次握手SYN,ACK

首先,在计算机网络用语当中,要严格区分大小写:
ACK为确认包的意思,而ack为acknowledge number,确认号码的意思,两者完全不同;
同理,SYN是建立连接包,不存在syn;
其次,务必搞懂TCP,TCP是传输控制协议,当数据从我的电脑传到服务器时,相当于建立了一个虚拟连接,我们把它称为http请求,就是在网页中输入地址url,产生的http请求,请求发生后,我的电脑和服务器之间产生了TCP连接,这个连接的过程称为双方的三次握手;
那么就很好懂了,第一次握手:首先我方发送一个SYN包,给这个包弄个序列号吧,于是计算机随机产生了一个序列号seq=x,序列号为x,seq是序号的意思;
第二次握手:服务器收到了这个请求包,返回一个响应包ACK包+SYN包,这里服务器也随机产生了一个序列号,seq=y,同时为了表示确定对该ip产生的连接,这样ack=x+1,也就是我的电脑发生序列号+1,当然这里面也可以+2,但是这是计算机协议的规定要+1,就像我们人类可以规定1+1等于2,也可以规定1+1等于3,所以你这个问题相当于在问,为什么1+1不能等于3呢,只是通用,好记,所以返回的序列号用+1来表示,就像你跟你邻居建立 连接,你是201户,你把数据给了门卫,门卫再交到202户手里,所以这个+1的含义在这。
第三次握手:我方收到服务器的SYN+ACK包,则我方再发送个响应包ACK包,其中ack=y+1即可。
通过三次握手确认一个连接产生,那么SYN=1,ACK=1又代表什么呢,这就是一个计算机高低电平,0是低电平,1是高电平,最原始的计算机通过0和1代表有效无效,仅仅代表这个包确认有效,SYN=1,SYN包有效,ACK=0,ACK包无效,ACK包不存在的意思罢了

  • 4
    点赞
  • 17
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值