首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

直播软件APP,网络通信握手次数有什么讲究

网络通信的传输握手次数,基本都在三次以上,三次或四次是最常见的次数,为什么这么设计呢?原因在于握手次数对传输的保障,我们来看一下。

一、三次握手

1、直播软件APP的TCP服务器进程先创建传输控制块TCB,时刻准备接受客户进程的连接请求,此时服务器就进入了监听状态

2、TCP客户进程也是先创建传输控制块TCB,然后向服务器发出连接请求报文,这是报文首部中的同部位,同时选择一个初始序列号,此时,TCP客户端进程进入了同步已发送状态,TCP规定,SYN报文段不能携带数据,但需要消耗掉一个序号

3、直播软件APP的TCP服务器收到请求报文后,如果同意连接则发出确认报文,同时也要为自己初始化一个序列号,此时TCP服务器进程进入了同步收到状态,这个报文也不能携带数据,但是同样要消耗一个序号

4、TCP客户进程收到确认后,还要向服务器给出确认,此时TCP连接建立,客户端进入已建立连接状态,TCP规定,ACK报文段可以携带数据,如果不携带数据则不消耗序号

5、当服务器收到客户端的确认后,也进入已建立连接状态,此后双方就可以开始通信了

二、四次握手

1、客户端进程发出连接释放报文,并且停止发送数据,释放数据报文首部,此时直播软件APP进入终止等待状态

2、服务器收到连接释放报文,发出确认报文,此时服务端进入关闭等待状态,TCP服务器通过高层的应用进程,客户端向服务器的方向进行释放,这时候处于半关闭状态,即客户端已经没有数据要发送了,但是服务器若发送数据,客户端依然接受

3、客户端收到服务器的确认请求后,客户端进入终止等待状态,等待直播软件APP服务发送连接释放报文

4、服务器将最后的数据发送完毕后,就像客户端发送连接释放报文

5、客户端收到服务器的连接释放报文后,必须发出确认,直播软件APP客户端进入到时间等待状态,必须经过长报文段寿命后,客户端才会撤销相应的TCB

6、服务器只要受到了直播软件APP客户端发出的确认,立即进入状态,在撤销TCB后,就结束了这次TCP连接

声明:以上内容为云豹科技作者本人原创,未经作者本人同意,禁止转载,否则将追究相关法律责任

  • 发表于:
  • 原文链接https://kuaibao.qq.com/s/20230329A058N900?refer=cp_1026
  • 腾讯「腾讯云开发者社区」是腾讯内容开放平台帐号(企鹅号)传播渠道之一,根据《腾讯内容开放平台服务协议》转载发布内容。
  • 如有侵权,请联系 cloudcommunity@tencent.com 删除。

扫码

添加站长 进交流群

领取专属 10元无门槛券

私享最新 技术干货

扫码加入开发者社群
领券