文章目录UDP协议?什么是校验和?基于UDP的应用层协议(了解)TCP协议确认应答(可靠性机制)超时重传(可靠性机制)连接管理(可靠性机制)三次握手(重点)四次挥手(重点)三次握手和四次挥手时客户端和服务器的状态滑动窗口(效率机制)流量控制(效率机制)窗口探测(效率机制)拥塞控制机制(效率机制)延时应答(效率机制)捎带应答(效率机制)粘包问题异常情况处理TCP和UDP的区别UDP协议?UDP它是属于TCP/IP协议族中的一种。是无连接的协议,发送数据前不需要建立连接,因为不需要建立连接,所以可以在网络上以任何可能的路径传输,至于有没有传输到目的地,UDP是不关心的,所以,UDP它是天然支持广播
TCP(TransmissionControlProtocol,传输控制协议)是一种面向连接的、可靠的、基于字节流的传输层通信协议。TCP的主要目标是提供一种可靠的、有序的和错误校验的数据传输方式,以确保数据在网络中的可靠传输。主要特点:面向连接:在传输数据之前,必须先建立TCP连接。连接是可靠的服务,具有固定的连接端点。可靠传输:TCP提供了数据传输的确认和重传机制,以确保数据的顺序和完整性。如果数据在传输过程中丢失或损坏,TCP会重新发送数据,以确保接收端能够正确地接收到数据。流量控制:TCP提供了一种机制,用于控制发送方发送数据的速度,以防止接收方来不及接收数据而造成数据丢失。拥塞控制:
简介四次挥手示意图在四次挥手过程中,第一次挥手中的Seq为本次挥手的ISN,ACK为上一次挥手的Seq+1,即最后一次数据传输的Seq+1。挥手信息由客户端首先发起。实现步骤:下面是TCP四次挥手的步骤:第一次挥手(FIN):主动关闭方发送一个带有FIN(Finish)标志的TCP报文段给被动关闭方,表示主动关闭方已经没有数据要发送了。第二次挥手(ACK):被动关闭方接收到第一次挥手的TCP报文段后,发送一个带有ACK(Acknowledgment)和确认序号的TCP报文段作为响应,表示已经收到了关闭请求。第三次挥手(FIN):被动关闭方发送一个带有FIN标志的TCP报文段给主动关闭方,表示被
文章目录1、TCP和UDP区别?2、TCP/IP协议涉及哪几层架构?3、描述下TCP连接4次挥手的过程?为什么要4次挥手?1、TCP和UDP区别?(1)TCP基于连接,UDP基于无连接。(2)TCP要求系统资源较多,UDP较少。(3)UDP程序结构较简单。(4)TCP保证数据正确性,UDP可能丢包。(5)TCP保证数据顺序,UDP不保证。2、TCP/IP协议涉及哪几层架构? 应用层传输层互连网络层网络接口层。3、描述下TCP连接4次挥手的过程?为什么要4次挥手? 因为TCP是全双工,每个方向都必须进行单独关闭。关闭连接时,当Server端收到FIN报文时,很可能并不会立即关闭SOCKET,
TCP中的连接和断开可以说是在面试中经常被问到的问题之一,正好有空就总结一下,首先回顾一下TCP的相关知识点1.TCP的基础知识1.1TCP的基本概念我们知道TCP是运输层的面向连接的可靠的传输协议。面向连接的,指的就是在两个进程发送数据之前,必须先相互“握手”,确保两进程可以进行连接。并且这个传输是点对点的,即一个TCP连接中只有一个发送方和接收方;可靠的,指的是在任何网络情况下,在TCP传输中数据都将完整的发送到接收方。1.2TCP的报文段结构源端口和目的端口:和UDP一样用于多路复用/分解来自或送到上一层序号:一个报文段的序号是整个传送的字节流序列,而不是该报文段的序列确认号:主机正在等
前言:大家好,我是良辰丫,我们已经学习了网络原理基础版,初步认识了网络,还学习了网络编程,了解了网络通信的各种程序,接下来我们更深入的了解网络是如何工作的.这篇文章我们主要介绍协议,UDP和TCP的一些原理.💞💞🧑个人主页:良辰针不戳📖所属专栏:javaEE初阶🍎励志语句:生活也许会让我们遍体鳞伤,但最终这些伤口会成为我们一辈子的财富。💦期待大家三连,关注,点赞,收藏。💌作者能力有限,可能也会出错,欢迎大家指正。💞愿与君为伴,共探Java汪洋大海。目录1.自定义协议(约定)1.1确定要传输哪些信息1.2确定数据以怎样的格式组织(如何约定)(应用层)1.3常见的约定符号1.3.1xml格式1.3
转眼又一年~~2023马上就要到尾声了,CSDN年度征文如约而至!不知不觉又在CSDN平台写了73篇博文,还是那句话,非常感谢CSDN提供的平台,让我们肆意挥洒自己熟悉领域的文章。同时也感谢关注和支持博主的粉丝们,在新的一年里,博主会继续努力,创造和编写更多有助于入门的开发小伙伴!也非常感谢这一年来认识的技术小伙伴,和他们交流过程中也学习和感悟了很多。目录🎉【回顾Flag】🎉【2023年Flag】【粉丝量】【文章数】【领域专栏】🌈【回顾2023】🌈【小失望】【大收货】🍋【博客足迹2023】🍋【新星导师】【专家证书】【2月份新锐社区】【社区活动获奖】【周榜前100】【认可榜】【热榜】【每天值得看
TCP三次握手/四次挥手TCP在传输之前会进行三次沟通,一般称为“三次握手”,传完数据断开的时候要进行四次沟通,一般称为“四次挥手”。数据包说明源端口号(16位):它(连同源主机IP地址)标识源主机的一个应用进程。目的端口号(16位):它(连同目的主机IP地址)标识目的主机的一个应用进程。这两个值加上IP报头中的源主机IP地址和目的主机IP地址唯一确定一个TCP连接。顺序号seq(32位):用来标识从TCP源端向TCP目的端发送的数据字节流,它表示在这个报文段中的第一个数据字节的顺序号。如果将字节流看作在两个应用程序间的单向流动,则TCP用顺序号对每个字节进行计数。序号是32bit的无符号数,
文章目录1、TCP和UDP区别?2、TCP/IP协议涉及哪几层架构?3、描述下TCP连接4次挥手的过程?为什么要4次挥手?4、计算机插上电源操作系统做了什么?5、Linux操作系统设备文件有哪些?1、TCP和UDP区别?TCP基于连接,UDP基于无连接。TCP要求系统资源较多,UDP较少。UDP程序结构较简单。TCP保证数据正确性,UDP可能丢包。TCP保证数据顺序,UDP不保证。2、TCP/IP协议涉及哪几层架构?应用层传输层互连网络层网络接口层。3、描述下TCP连接4次挥手的过程?为什么要4次挥手?因为TCP是全双工,每个方向都必须进行单独关闭。关闭连接时,当Server端收到FIN报文时
今天,我们要通过实际的案例,来学习下TCP挥手的知识,在实战中加深对这些知识的理解。我们在做一些应用排查的时候,时常会在日志里看到跟TCP有关的报错。比如在Nginx的日志里面,可能就有connectionresetbypeer这种报错。“连接被对端reset(重置)”,这个字面上的意思是看明白了。但是,心里不免发毛:这个reset会影响我们的业务吗,这次事务到底有没有成功呢?这个reset发生在具体什么阶段,属于TCP的正常断连吗?我们要怎么做才能避免这种reset呢?要回答这类追问,Nginx日志可能就不够用了。事实上,网络分层的好处是在于每一层都专心做好自己的事情就行了。而坏处也不是没有