TCP三次握手

TCP三次握手的过程?为什么要三次握手?

TCP运输连接的建立和释放是每一次面向连接的通信中必不可少的过程。TCP运输连接就有三个阶段:连接建立数据传送连接释放

连接建立的过程需要解决以下三个问题:
①要使每一方能够确知对方的存在。
②要允许双方协商一些参数(如最大窗口值、服务质量等)。
③能够对运输实体资源(如缓存大小、连接表中的项目等)进行分配。

TCP连接的建立采用客户服务器方式。主动发起连接的建立的引用进程叫做客户,而被动等待连接建立的应用进程叫做服务器

TCP的连接建立

用三次握手建立TCP连接

A的TCP向B发出连接请求报文段,其首部的中的同部位SYN=1,并选择序号seq=x,表明传送数据时的第一个数据字节的序号是x.
B的TCP收到连接请求报文段后,如同意,则发回确认。B在确认报文段中应使SYN=1,ACK=1,其确认号ack=x+1,自己选择的序号seq=y。
A收到次报文段后向B给出确认,其ACKA=1,确认号ack=y+1。A的TCP通知上层应用进程,连接已经建立。
B的TCP收到主机A的确认后,也通知其上层应用进程:TCP连接已经建立。

上面给出的l连接建立的过程叫做三次握手。

为什么需要三次握手?

  • 信息对等角度看,两端分别要确认自己与对方的发送、接受能力均正常。(第二次握手后,B还不能确定自己的发送和A的接受能力)
  • A的超时连接请求可能会在双方释放连接后到达B,B会误以为是A发送了新的连接请求,从而创建连接,造成服务器资源被浪费
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值