【网络】TCP三次握手四次挥手

TCP的传输连接管理

运输连接的三个阶段:连接建立、数据传送、连接释放。

TCP的连接建立(“三次握手”)

三次握手

B的TCP服务器进程先创建传输控制模块TCB(包含一些重要信息,如:TCP链接表,到发送和接收缓存的指针,到重传队列的指针,当前的发送和接收序号,等等),准备接收客户进程的连接请求。然后服务器进程就一直处于LISTEN(收听)状态,等到客户的连接请求。


A的TCP客户进程也是首先创建传输控制模块TCB,然后向B发出连接请求报文段,这时首部中的同步位SYN = 1,同时选择一个初始序号seq = x。TCP规定,SYN=1的报文段不能携带数据,但是消耗掉一个序号。这时,TCP客户进程进入SYN-SENT(同步已发送)状态。


B收到连接请求报文段后,如同意建立连接,则向A发送确认。在确认报文段中应把SYN位和ACK位都置1,确认号是ack = x+1,同时也为自己选择一个初始序号seq = y 。这时TCP服务器进程进入SYN-RCVD(同步收到)状态。


TCP客户端收到B的确认后,还要向B给出确认。确认报文段的ACK置1,确认号ack = y+1,而自己的序号seq = x+1。TCP规定,ACK报文段可以携带数据。但如果不携带数据则不消耗序号,所以,下一个数据报文段的序号仍然是seq = x+1。这时,TCP连接已经建立,A进入ESTABLISHED(已建立连接)状态。
当B收到A的确认的后,也进入ESTABLISHED状态。


为什么A还要再发送一次确认呢?
这主要是为了防止已经失效的连接请求报文段突然又传送到了B,B收到这个失效的连接请求报文段之后,误以为是A又发出一次新的连接请求,于是就向A发出确认报文段,同意建立连接。嘉定不采用三次握手,那么只要B发出发出确认,新的连接就建立了。由于A并没有发出连接i请求,因此不会理睬B的确认,也不会向B发送数据。但B却以为新的运输 连接已经开始了,并一直等待A发来数据。B的许多资源就因此浪费了。

TCP的连接释放 (“四次挥手”)

四次挥手

数据传输结束后,通信的双方都可释放连接。现在A和B都处于ESTABLISHED状态。A的应用进程先向其TCP发出连接释放报文段,并停止再发送数据,主动关闭TCP连接。A把连接释放报文段首部的FIN置1,其序号seq = u,它等于前面已传送过的数据的最后一个字节的序号加1,这时A进入FIN-WAIT-1(终止等待1)状态,等待B的确认。请注意,TCP规定,FIN报文段即使不懈怠数据,它也消耗掉一个序号。


B收到连接释放报文段后即发出确认,确认号是ack = u+1,而这个报文段自己的序号是v,等于B前面已发送过的数据的最后一个字节的序号加1.然后B就进入到CLOSE-WAIT(关闭等待)状态 。TCP服务器进程这时应通知高层应用进程,因而从A到B这个方向的连接就释放了,这时的TCP连接处于半关闭(half-close)状态,即A已经没有数据要发送了,但B发送数据,A仍要接收。也就是说,从B到A这个方向的连接并未关闭。


A收到B的确认后,就进入FIN-WAIT-2(终止等待2)状态,等待B发出的连接释放报文段


若B已经没有要向A发送的数据,其应用进程就通知TCP释放连接。这时B发出的连接释放报文段必须使FIN = 1。现假定B的序号是w(在版关闭状态B可能又发送了一些数据)。B还必须重复上次已经发送过的确认号ack = u+1.这时B就进入LAST-ACK(最后确认)状态,等待A的确认。


A在收到B的连接释放报文段后,必须对此发出确认。在确认报文段中把ACK置1,确认号ack = w+1,而自己的序号是seq = u+1,然后进入TIME-WAIT(时间等待)状态。请注意,现在TCP连接还没有释放掉。必须经过时间等待计时器(TIME-WAIT timer)设置的时间2MSL后,A才进入到CLOSED(关闭)。时间MSL叫做最长报文段寿命。当A撤销响应的传输控制块TCB后,就结束了这次的TCP连接。

为什么A在TIME-WAIT状态必须等待2MSL的时间呢?
第一,为了保证A发送的最后一个ACK报文段能够到达B。
第二,防止之前提到的“已失效的连接请求报文段”出现在本连接中。A在发送完最后一个ACK报文段小时候,再经过2MSL,就可以使本连接持续的时间内所产生的所有报文段都从网络中消失。

B只要收到A发出的确认,就进入CLOSED状态,同样,B再撤销响应的传输控制块TCB后,就结束了这次的TCP连接。可以注意到,B结束TCP连接的时间要比A早一些。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
东南亚位于我国倡导推进的“一带一路”海陆交汇地带,作为当今全球发展最为迅速的地区之一,近年来区域内生产总值实现了显著且稳定的增长。根据东盟主要经济体公布的最新数据,印度尼西亚2023年国内生产总值(GDP)增长5.05%;越南2023年经济增长5.05%;马来西亚2023年经济增速为3.7%;泰国2023年经济增长1.9%;新加坡2023年经济增长1.1%;柬埔寨2023年经济增速预计为5.6%。 东盟国家在“一带一路”沿线国家中的总体GDP经济规模、贸易总额与国外直接投资均为最大,因此有着举足轻重的地位和作用。当前,东盟与中国已互相成为双方最大的交易伙伴。中国-东盟贸易总额已从2013年的443亿元增长至 2023年合计超逾6.4万亿元,占中国外贸总值的15.4%。在过去20余年中,东盟国家不断在全球多变的格局里面临挑战并寻求机遇。2023东盟国家主要经济体受到国内消费、国外投资、货币政策、旅游业复苏、和大宗商品出口价企稳等方面的提振,经济显现出稳步增长态势和强韧性的潜能。 本调研报告旨在深度挖掘东南亚市场的增长潜力与发展机会,分析东南亚市场竞争态势、销售模式、客户偏好、整体市场营商环境,为国内企业出海开展业务提供客观参考意见。 本文核心内容: 市场空间:全球行业市场空间、东南亚市场发展空间。 竞争态势:全球份额,东南亚市场企业份额。 销售模式:东南亚市场销售模式、本地代理商 客户情况:东南亚本地客户及偏好分析 营商环境:东南亚营商环境分析 本文纳入的企业包括国外及印尼本土企业,以及相关上下游企业等,部分名单 QYResearch是全球知名的大型咨询公司,行业涵盖各高科技行业产业链细分市场,横跨如半导体产业链(半导体设备及零部件、半导体材料、集成电路、制造、封测、分立器件、传感器、光电器件)、光伏产业链(设备、硅料/硅片、电池片、组件、辅料支架、逆变器、电站终端)、新能源汽车产业链(动力电池及材料、电驱电控、汽车半导体/电子、整车、充电桩)、通信产业链(通信系统设备、终端设备、电子元器件、射频前端、光模块、4G/5G/6G、宽带、IoT、数字经济、AI)、先进材料产业链(金属材料、高分子材料、陶瓷材料、纳米材料等)、机械制造产业链(数控机床、工程机械、电气机械、3C自动化、工业机器人、激光、工控、无人机)、食品药品、医疗器械、农业等。邮箱:market@qyresearch.com

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值