0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

TCP和UDP分别是什么 tcp三次握手和4次挥手的过程

要长高 来源:网络整理 作者:网络整理 2023-09-29 15:51 次阅读

TCP和UDP分别是什么

TCP和UDP都是计算机网络协议,用于实现数据在不同设备之间的传输。

TCP,即传输控制协议(Transmission Control Protocol),面向连接、可靠传输的协议,能保证数据的可靠性、有序性和完整性,常用于大文件的上传或下载电子邮件、网页浏览等应用场景。

UDP,即用户数据报协议(User Datagram Protocol),面向无连接、不可靠传输的协议,没有 TCP 那么严格的连接建立和释放过程,因此传输效率较高,直接将数据报文发送给对方主机,但无法保证数据传输的可靠性、有序性和完整性,常用于实时音视频、在线游戏等应用场景。

二者的区别在于 TCP 是面向连接的、提供可靠数据传输的协议,而 UDP 则是面向无连接的、提供尽最大努力交付的数据传输服务的协议。

tcp三次握手和4次挥手的过程

TCP 连接的建立和关闭时都需要通过握手协议来协商通信参数和状态。TCP 握手协议包括三次握手建立连接和四次握手断开连接两个过程。

TCP 三次握手建立连接过程如下:

客户端向服务器端发送一个 SYN(同步)报文,其中 SYN=1 表示这是一个连接请求报文段。此时客户端进入 SYN_SEND 状态。

服务器端接收到 SYN 报文段后,需要确认客户的 SYN 报文段。服务器向客户端发送一个 SYN+ACK 报文,其中 SYN=1,ACK=1 表示服务器同意连接建立。此时服务端进入 SYN_RECV 状态。

客户端接收到服务器端的 SYN+ACK 报文段后,需要向服务器端发送一个 ACK(确认)报文段,其中 ACK=1 表示客户端确认连接建立,此时客户端和服务端都进入 ESTABLISHED 状态,完成三次握手。

TCP 四次挥手断开连接过程如下:

客户端向服务器端发送一个 FIN(结束)报文,其中 FIN=1 表示客户端已经完成发送任务。此时客户端进入 FIN_WAIT_1 状态。

服务器端接收到客户端的 FIN 报文,需要给客户端回一个 ACK 报文,确认接收到客户端的 FIN 报文,同时进入 CLOSE_WAIT 状态。

当服务器已经完成发送任务时,发出 FIN 报文,说明已经没有数据可以发送了。此时服务器进入 LAST_ACK 状态。

客户端接收到服务器端的 FIN 报文,需要发送一个 ACK 报文作为应答,此时客户端进入 TIME_WAIT 状态,需要等待一定的时间,确保服务器端已经收到自己的 ACK 报文,然后再进入到 CLOSED 状态。服务器端接收到客户端的 ACK 报文之后,进入到 CLOSED 状态,此时 TCP 连接彻底关闭。

这里需要注意的是,在 TCP 四次挥手的最后一步,客户端进入 TIME_WAIT 状态,需要等待一段时间再进入 CLOSED 状态。等待时间通常是两个最大报文段生命周期,即 2MSL,这是为了确保服务器端能够收到客户端发送的最后一个 ACK 报文。

TCP和UDP协议各有什么特点

TCP(Transmission Control Protocol)和UDP(User Datagram Protocol)是两种传输层协议,它们各自有不同的特点:

TCP特点:

1.面向连接:在传输数据时需要先建立连接,然后才能传输数据;

2.可靠传输:通过使用序列号、确认应答等机制,保证数据传输的可靠性;

3.“慢启动”算法:TCP 通过“慢启动”算法来控制拥塞窗口大小,防止网络拥堵;

4.流量控制:控制数据传输的速率,防止过多的数据拥塞网络。

UDP特点:

1.面向无连接:无需建立连接即可传输数据;

2.不可靠传输:不提供如 TCP 那样的可靠性保证,只是简单地把应用程序传给它的数据报发送出去;

3.速度快:无需像 TCP 那样等待连接建立、确认等过程,因此传输速度较快;

4.流量控制:UDP 协议不提供流量控制和拥塞控制机制,传输数据的速率几乎只受应用层的限制。

综上,TCP协议适用于数据传输要求可靠性高、数据量大的应用场景,例如文件上传、下载、邮箱等;而UDP协议则适用于数据实时性高、速度要求快的应用场景,例如在线游戏、视频传输等。

编辑:黄飞

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 数据传输
    +关注

    关注

    9

    文章

    1133

    浏览量

    63144
  • 服务器
    +关注

    关注

    11

    文章

    6869

    浏览量

    81562
  • TCP
    TCP
    +关注

    关注

    8

    文章

    1091

    浏览量

    77838
  • UDP
    UDP
    +关注

    关注

    0

    文章

    258

    浏览量

    33326
  • 客户端
    +关注

    关注

    1

    文章

    243

    浏览量

    16101
收藏 人收藏

    评论

    相关推荐

    三次握手,四挥手你懂吗

    三次握手,四挥手”怎么办?
    发表于 04-08 07:23

    TCP三次握手过程描述

    TCP三次握手过程,一个完整的三次握手也就是 请求---应答---再次确认
    发表于 03-02 15:37 8次下载

    TCP三次握手和四挥手以及11种状态资料下载

    TCP三次握手和四挥手以及11种状态资料下载的电子资料下载,更有其他相关的电路图、源代码、课件教程、中文资料、英文资料、参考设计、用户指南、解决方案等资料,希望可以帮助到广大的电子工程师们。
    发表于 04-15 08:41 2次下载
    <b>TCP</b><b>三次</b><b>握手</b>和四<b>次</b><b>挥手</b>以及11种状态资料下载

    tcp协议三次握手详细过程

    TCP是主机对主机层的传输控制协议,提供可靠的连接服务,采用三次握手确认建立一个连接:第一握手:主机A发送位码为syn=1,随机产生seq number=1234567的数据包到服务器,主机B由
    发表于 12-08 11:53 8249次阅读
    <b>tcp</b>协议<b>三次</b><b>握手</b>详细<b>过程</b>

    大神告诉你TCP建立连接为什么是三次握手

    三次握手(Three-Way Handshake)即建立TCP连接,是指建立一个TCP连接时,需要客户端和服务端总共发送3个包以确认连接的建立。在socket编程中,这一过程由客户端执行connect来触发,整个流程如下图所示:
    的头像 发表于 04-16 11:43 9737次阅读
    大神告诉你<b>TCP</b>建立连接为什么是<b>三次</b><b>握手</b>

    TCP/IP协议工作过程三次握手和四挥手

    三次握手:Client收到确认后,检查ACK是否为1,如果正确则将标志位ACK置为1,并将该数据包发送给Server,Server检查ACK是否为1,如果正确则连接建立成功,Client
    的头像 发表于 10-25 09:49 6480次阅读

    TCP三次握手过程及四挥手过程说明

    三次握手过程说明: 1. 由客户端发送建立 TCP 连接的请求报文,其中报文中包含 seq 序列号,是由发送端随机生成的,并且将报文中的 SYN 字段置为 1,表示需要建立 TCP 连接
    的头像 发表于 03-01 12:00 3635次阅读

    TCP三次握手和四挥手过程中的异常情况

    TCP 三次握手和四挥手过程中,途中某一步的报文丢失了,会发生什么?
    的头像 发表于 09-05 10:23 642次阅读

    如何使用WireShark进行TCP三次握手

    TCP三次握手过程
    的头像 发表于 11-01 09:50 1314次阅读

    通过WireShark抓取TCP三次握手过程分享

    三次握手完成。
    发表于 11-01 09:49 1322次阅读

    UDPTCP的区别

    TCP 的**三次握手建立连接**和**四挥手释放连接**进行了详细地阐述,本节教程针对于 TCP 的其他内容进行讲解,首先是同处于传输层协议的`UDP`协议,这两者有什么区别
    的头像 发表于 01-20 17:05 728次阅读
    <b>UDP</b>和<b>TCP</b>的区别

    讲一讲的TCP三次握手和四挥手

    TCP三次握手不陌生。今天我想用通俗的话来给大家讲一讲TCP三次握手和四挥手。毕竟,这个知识点在面试时被问到的概率很高!
    的头像 发表于 02-03 10:43 1944次阅读
    讲一讲的<b>TCP</b><b>三次</b><b>握手</b>和四<b>次</b><b>挥手</b>

    TCP建立连接概述及三次握手、四挥手的流程

    TCP协议就是靠确认应答机制、超时重传机制等保证连接可靠性的,接下来就通过TCP协议的三次握手及四三次挥手来分析一下A与B建立连接、
    的头像 发表于 03-23 15:57 213次阅读
    <b>TCP</b>建立连接概述及<b>三次</b><b>握手</b>、四<b>次</b><b>挥手</b>的流程

    TCPUDP通讯我们怎么选?

    TCPUDP都是以太网常用的通讯模式,其中TCP模式下设备之间要建立连接,UDP则不需要。 在TCP模式下,设备想要发送数据互相联系,先要进行“三次握手”,即设备A发送连接申请,设备B回复同意
    的头像 发表于 03-26 02:35 575次阅读

    用恋爱的方式解释TCP三次握手和四挥手

    TCP建立连接时三次握手,断开时为何4握手的自我理解:恋爱时连接时客户端说:SYN(约吗?)服务器说:SYNACK(约啊,一起)接着客户端说:ACK(好
    的头像 发表于 08-28 16:11 182次阅读
    用恋爱的方式解释<b>TCP</b>的<b>三次</b><b>握手</b>和四<b>次</b><b>挥手</b>