TCP三次握手建立连接和四次挥手断开连接

news/2024/11/14 21:11:55/

TCP的连接与断开

        TCP 通过三次握手建立连接,以建立确保数据传输的参数,连接的双方都将初始化与 TCP 连接相关的许多 TCP 状态变量。该连接是一条逻辑连接,其共同状态仅保留在二个通信端系统的TCP程序中。

TCP连接的组成包括:一台主机上的缓存、变量和与进程连接的套接字,以及另一台主机上的另 一组缓存、变量和与进程连接的套接字。

MTU:本地发送主机发送的最大链路层帧长度。以太网和 PPP 链路层协议都具有500 字节的 MTU,MSS 的典型值为1460 字节。路径 MTU 是指能在从源到目的地的所有链路上发送的最大链路层,已经提出了多种发现路径 MTU 的方法,并基于路径 MTU 值设 MSS。

MSS:TCP 可从缓存中取出并放入报文段中的数据数量受限于最大报文段长度 (MSS),MSS 通常根据 MTU 来设置。设置该 MSS 要保证一个 TCP 报文段(当封装在一个 IP 数据报中)加上 TCP/ IP 首部长度将适合单个链路层帧。

三次握手建立TCP连接

第一步:客户端的TCP向服务器端的TCP发送一个不包含应用层数据的特殊TCP报文段,在该报文段的首部中的一个标志位SYN被置为1。因此,这个特殊报文段被称为SYN报文段。另外,客户端TCP会随机选择一个初始序号放置于SYN报文段的序号字段中。最后,该SYN报文段会被封装在一个IP数据报中发送给服务器。
第二步:一旦包含SYN报文段的IP数据报到达服务器主机,服务器会从该数据报中提取出SYN报文段,为该TCP连接分配TCP缓存和变量,并向客户端TCP发送允许连接的报文段,这个允许连接的报文段也不包含应用层数据。但是,在该报文段的首部。首先SYN比特被置为1。其次,确认号字段被置为client_isn+1。最后,服务器选择自己的初始序号,并将其放置到序号字段中。该允许连接的报文段被称为SYNACK报文段。
第三步:客户端TCP收到SYNACK报文段后,客户也要给该连接分配缓存和变量。客户主机则向服务器发送另外一个报文段,这最后一个报文段对服务器的允许连接的报文段进行了确认。因为连接已经建立了,所以该SYN标志位被置为0。第三次握手可以在报文段中携带应用层的数据。

四次挥手断开连接

第一步:客户应用进程发出一个关闭连接命令。这会引起客户TCP向服务器进程发送一个首部FIN标志位被置为1的特殊TCP报文段.
第二步:服务器接收到该报文段后,就向发送方回送一个确认报文段。
第三步:服务器再次发送自己的终止报文段,其首部FIN标志位被置为1.
第四步:最后,客户对这个服务器的终止报文段进行确认。


http://www.ppmy.cn/news/296637.html

相关文章

【MySQL高级篇笔记-数据库的设计规范(中) 】

此笔记为尚硅谷MySQL高级篇部分内容 目录 一、为什么要数据库设计 二、范式 1、范式简介 2、范式都包括哪些 3、键和相关属性的概念 4、第一范式(1st NF) 5、第二范式(2nd NF) 6、第三范式(3rd NF) 7、小结 三、反范式化 1、概述 2、 应用举例 3、反范式的新问…

IC验证工程师工作一周年的体会

转眼之间自己已经工作一周年了,作为一名验证工程师,这一年里面感觉自己虽然有了一定的成长,但是成长的还是比较缓慢的,接下来从个人的角度说说我现在对从IC验证的一些体会。 一.要养成良好的工作习惯 (1)自…

python web开发示例详解

Python是一种服务器端编程语言,能够制作强大的Web应用程序。程序员可以使用Python编写服务器端应用程序和动态网页。Python的设计者发明了一些高级应用程序接口(API),包括Django和Flask,这些接口简化了Python的Web编程。 在本文中…

探索Beyond Compare:让文件比较和管理变得简单高效

在这个信息爆炸时代,我们的日常生活和工作中需要处理大量的数据和文档。在这个过程中,有时候我们会面临找出不同文件之间的差异、合并重复内容等需求。那么,有没有一款软件可以帮助我们轻松地完成这些任务呢?答案当然是肯定的&…

FX系列DSZR回原点指令结束后M8029不亮的解决方案

1、错误案例:用线圈控制M531自保持,通过M8029亮是不能实现,因为M8029会一直不亮,需要用SET和RST 2、正确案例 3、遇到问题处理方法:新建一个工程测试,因为原来的工程干扰比较多。新建一个工程能够有效测…

m5310模组数据上传至onenet_m5310模组数据上传至onenet_移动M5310-A NB-IoT通信模组技术参数...

标签: NB-IoT 提供NB-IoT技术特点,NB-IoT模块/芯片,NB-IoT解决方案等前沿技术趋势信息,工程师最喜欢的NB-IoT技术社区/物联网 物联网是新一代信息技术的重要组成部分,也是“信息化”时代的重要发展阶段。其英文名称是&…

M5311连接HTTPS服务器下载bin文件(干货)

M5311是中国移动退出一款NB-IoT模块,体积小,功耗低,对物联网设备非常适用。它固件自带了TCP、HTTP、MQTT等通信协议,开发者只需要通过AT指令进行相关配置即可。 物联网产品一般都对OTA空中升级功能有要求,升级通常是连接http服务器下载bin文件,然后进行MD5校验,完全正确…

浅谈商品关键词搜索商品API接口的用途及数据展示

电商平台关键词搜索商品API接口的用途主要包括以下几个方面: 帮助电商平台实现商品搜索:通过关键词搜索商品API接口,电商平台可以为消费者提供一个简单、快捷的商品搜索功能。用户只需输入关键词,就可以得到与该关键词相关的商品列…