TCP三次握手,四次挥手问题总结

TCP三次握手,四次挥手问题总结

TCP三次握手,四次挥手解释

SYN 包:建立连接请求的包

FIN 包:切断TCP 连接的包

ACK 包:针对SYN 包和FIN 包的确认应答包


1、TCP 的特点及其目的:

(1)TCP 是通过校验和、序列号、确认应答信号、重发机制、连接管理以及窗口控制、流量控制、拥塞控制等许多机制来实现数据的可靠性传输。

(2)在TCP 中,当发送端的数据达到接收端主机的时候,接收端主机会返回一个已收到消息的通知,这个通知被称之为“确认应答信号”ACK

(3)TCP 通过肯定的确认应答信号ACK 实现可靠的数据传输。当发送端将数据发出之后便会等待接收端主机的确认应答信号。如果有确认应答,这说明数据已经成功到达了接收端,否则的话,数据包丢失的可能性很大。

*******************************************************************************************************

*******************************************************************************************************

2、TCP建立连接的三次握手:

(1)首先,画出如图1 所示的TCP 三次握手连接示意图,包括客户端主机A 和服务器端主机B。

(2)首先,从网络编程的角度来看,我们会发现,服务器端会首先创建传输控制块TCB 准备接受客户端的连接请求,然后,服务器端就会处于监听状态(LISTEN 状态)以等待客户端的连接请求。如果有请求到来,则作出受理连接请求的响应(accept动作)。

(第1次握手)对于客户端,也是首先创建 传输控制块TCB,然后向服务器端发出 TCP 连接请求报文段 SYN 包,(其中,SYN 包 的初始序列号 seq=x,SYN 包中的同步位 SYN=1),发送完该数据包之后,客户端会进入 SYN_SENT 状态(同步已发送状态)。

        这里要知道,TCP 协议规定,SYN 包(即同步位 SYN=1的报文段)不能够携带数据,但是要消耗掉一个序列号。

(第2次握手)服务器端接收到客户端发送过来的连接请求报文段SYN 包 过之后,则会同意建立TCP 连接,所以会反馈一个针对这个SYN 包的 确认应答信号ACK包(确认序列号是 ack =x+1);与此同时,服务器自己也会发送一个SYN 包 用来同步连接用(SYN 包的初始序列号 seq=y)。

因此,在第二阶段,服务器端会把 刚才的 ACK包和SYN包(确认位ACK=1,同步位SYN=1)统一起来形成一个包ACK+SYN包,作为一个包发送给客户端。发送完该数据

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值