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

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

3天内不再提示

TCP/UDP简介、特点及优劣势

马哥Linux运维 来源:马哥Linux运维 2023-10-16 10:16 次阅读

TCP/UDP

1TCP/UDP简介

TCP和UDP是两种常见的互联网传输协议,它们都是在IP网络上运行的传输层协议。

TCP(Transmission Control Protocol:传输控制协议)是一种面向连接的可靠协议。

它提供数据传输的有序性、完整性、流量控制和拥塞控制。

TCP的通信过程包括三次握手建立连接和四次挥手断开连接。

使用TCP时,数据按顺序发送和接收,确保数据可靠地到达目的地。

TCP适用于需要准确可靠传输的应用,如网页浏览、文件传输、电子邮件和远程登录。

UDP(User Datagram Protocol:用户数据报协议)则是一种无连接的不可靠协议。

它提供了一种简单的、不可靠的传输方式。

UDP不保证数据传输的有序性、完整性、流量控制和拥塞控制。

使用UDP时,数据以数据包的形式发送,接收方不需建立连接,直接接收。

UDP适用于实时应用,如音频视频流传输、在线游戏和广播。

2TCP/UDP的特点

TCP/UDP有什么相同点?

都是在IP网络上运行的传输层协议;

都使用端口号来标识不同的应用程序;

都可以用于客户端和服务器之间的通信。

TCP/UDP有什么不同点?

TCP是面向连接的,UDP是无连接的;

TCP提供可靠的数据传输服务,UDP不提供可靠性保证;

TCP具有流量控制和拥塞控制功能,UDP没有;

TCP需要进行三次握手建立连接,UDP不需要。

TCP的错误检测和纠正:

TCP使用校验和来检测传输过程中是否发生了数据损坏或错误。发送方在发送数据时计算校验和,并将其包括在TCP头部中。接收方在接收到数据后重新计算校验和,并将其与接收到的校验和进行比较。如果两者不匹配,则表明数据在传输过程中发生了错误,接收方会请求发送方重新发送丢失或损坏的数据。

TCP主要通过以下几个字段进行错误检测和纠正

(1)校验和——每个TCP报文段都包括检验和字段,校验和用来检查报文段是否出现传输错误,如果报文段出现传输错误,TCP检查出错就丢弃该报文段。

(2)确认——接收端检查报文是否出错,发现出错时就丢弃,不发确认;而发送端TCP就通过检查接收端的确认,判断发送的报文段是否已经正确到达目的地。

(3)超时——发送端根据发出的报文段在超时规定的时间内是否收到确认,从而来判断该报文段是否丢失或传输出错。TCP使用了4种计时器:重传计时器、坚持计时器、保持计时器和时间等待计时器来保证了传输的可靠性。

TCP的流量控制:

流量控制是一种机制,确保数据发送方和接收方之间的数据传输速度保持匹配。TCP使用滑动窗口机制实现流量控制。发送方在发送数据时,接收方会向发送方通告其可接收的数据量,即窗口大小。发送方根据接收方通告的窗口大小控制发送数据的速度,以确保不会发送过多的数据导致接收方无法及时处理。如果接收方无法及时处理数据,它可以调整窗口大小以限制发送方的数据流量。

TCP的拥塞控制:

拥塞控制是一种机制,用于避免过多的数据注入到网络中导致网络拥塞。TCP使用一些算法来识别和应对网络拥塞。其中最常用的算法是拥塞避免算法和拥塞控制算法。拥塞避免算法通过动态调整拥塞窗口大小来控制发送方的数据发送速率。拥塞控制算法使用拥塞检测和拥塞恢复来减少拥塞出现时的数据流量。

TCP的三次握手:

6fd4fa20-6069-11ee-939d-92fbcf53809c.png (图片取自互联网,侵权请联系删除)

在建立TCP连接时,使用三次握手(three-way handshake)来确保双方都同意建立连接。下面是三次握手的步骤:

1. 客户端向服务器发送一个连接请求报文(SYN)并指定初始序列号。

2. 服务器收到连接请求后,回复一个确认报文(ACK)作为响应,同时也发送一个连接请求报文(SYN)。

3. 客户端收到服务器的回复后,再向服务器发送确认报文(ACK)作为响应。此时,连接建立,双方可以开始进行数据传输。

TCP的四次挥手:

6feda8b8-6069-11ee-939d-92fbcf53809c.png

(图片取自互联网,侵权请联系删除)

当TCP连接不再需要时,使用四次挥手(four-way handshake)来正常关闭连接。下面是四次挥手的步骤:

1. 客户端向服务器发送一个连接释放报文(FIN),表示客户端不再发送数据。

2. 服务器收到连接释放报文后,发送一个确认报文(ACK)作为响应,表示已收到客户端的连接释放请求。

3. 服务器继续传输可能仍在传送的数据,然后发送连接释放报文(FIN)给客户端。

4. 客户端收到服务器的连接释放报文后,发送一个确认报文(ACK)作为响应,表示已收到服务器的连接释放请求。此时,双方的连接断开。

3总结

TCP的优势

可靠性:TCP提供可靠的数据传输,确保数据的完整性和顺序性。

错误检测和纠正:TCP具备检测和纠正传输中发生的错误的能力。

流量控制:TCP通过流量控制避免了接收方因来不及处理大量数据而导致的问题。

TCP的劣势

较慢:因为TCP提供可靠传输,它需要进行复杂的握手和确认过程,这导致了相对较高的延迟。

处理负载:TCP的控制机制增加了系统的负载,对处理能力有一定要求。

UDP的优势

较快:UDP不需要进行连接建立和握手,以及其他传输保障机制,因此传输速度相对较快。

简单轻量:UDP的头部开销较小,资源占用较少。

UDP的劣势

不可靠:UDP没有提供可靠性保证,传输过程中可能丢包或乱序。

不具备流控制和拥塞控制:UDP不包含流控制和拥塞控制机制,可能导致数据的丢失和网络拥塞。

审核编辑:汤梓红

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

    关注

    54

    文章

    10906

    浏览量

    100745
  • TCP
    TCP
    +关注

    关注

    8

    文章

    1271

    浏览量

    78297
  • UDP
    UDP
    +关注

    关注

    0

    文章

    311

    浏览量

    33620
  • 传输协议
    +关注

    关注

    0

    文章

    68

    浏览量

    11337
  • 传输层
    +关注

    关注

    0

    文章

    29

    浏览量

    10839

原文标题:传输层两大战神(TCP/UDP)

文章出处:【微信号:magedu-Linux,微信公众号:马哥Linux运维】欢迎添加关注!文章转载请注明出处。

收藏 人收藏

    评论

    相关推荐

    STM32WB和STM32L4/L4+的区别和优劣势是什么?

    论 STM32WB 和 STM32L4 / L4+的区别,和优劣势
    发表于 04-26 08:07

    LDMOS和GaN各有什么优劣势?能理解成完全会是一个时代替换另一个时代吗?

    LDMOS和GaN各有什么优劣势?能理解成完全会是一个时代替换另一个时代吗?
    发表于 08-11 14:50

    你如何看待LoRa技术的优劣势

    络,形成源于LoRaWAN的物联网标准规范并大范围推广。你认同LoRA技术优劣势的分析吗?你认为这个技术在中国的市场前景如何?
    发表于 12-12 17:42

    路由器的2.4GHz频段和5GHz频段各有什么优劣势

    路由器的2.4GHz频段和5GHz频段各有什么优劣势
    发表于 06-17 08:59

    请问工业机器人有什么优劣势

    请问工业机器人有什么优劣势
    发表于 06-18 06:04

    异步电路原理是什么?有哪些优劣势

    异步电路原理是什么?有哪些优劣势?通过英特尔的Loihi芯片实现异步电路?
    发表于 06-21 07:17

    SPI协议的特性是什么?具有哪些优劣势

    什么是SPI协议?SPI总线传输有哪几种模式?SPI基本的通讯过程是怎样的?SPI协议的特性是什么?具有哪些优劣势
    发表于 02-17 08:08

    四大存储方式技术解析其优劣势

    四大存储方式技术解析其优劣势
    发表于 01-22 13:38 23次下载

    六种室内定位技术的优劣势分析

    本文主要对六种室内定位技术的优劣势进行了分析,另外介绍了室内定位技术当前与未来的应用场景。
    发表于 05-04 15:31 2.7w次阅读
    六种室内定位技术的<b class='flag-5'>优劣势</b>分析

    uwb定位技术优劣势有哪些_uwb定位技术的应用

    本文首先对UWB定位技术的原理进行了介绍,其次分析了uwb定位技术的优劣势,最后介绍了uwb定位技术的应用场景及前景分析。
    发表于 05-04 16:12 3.1w次阅读

    cob封装的优劣势

    COB封装的应用在照明领域已经应用了多年,其在各方面都存在诸多优势,所以得到了诸多照明企业的青睐,那么COB封装技术应用在显示屏上面,又会擦出怎样的火花?会不会也有一些层面出现水土不服的现象呢?下面一起来分析一下COB封装的优劣势
    的头像 发表于 05-07 17:46 7117次阅读

    RC modeling的优劣势

    FIGURE 6.5讲了3种不同的Lumped RC modeling,书中说明了这三种RC modeling的优劣势
    的头像 发表于 06-19 16:42 597次阅读
    RC modeling的<b class='flag-5'>优劣势</b>

    无铅锡膏和有铅锡膏的优劣势有哪些?

    使用哪种锡膏的,不同的锡膏有不同的作用,适合才是最高的,下面佳金源锡膏厂家为大家里讲解一下两者的优劣势:无铅锡膏与有铅锡膏的优缺点比较:一、无铅锡膏1、环保性无铅锡膏的一大优点就是环保性,由于有铅锡膏对
    的头像 发表于 05-06 14:28 6089次阅读
    无铅锡膏和有铅锡膏的<b class='flag-5'>优劣势</b>有哪些?

    led恒流和恒压驱动优劣势

    led恒流和恒压驱动优劣势 LED恒流和恒压驱动是在LED照明应用中常用的两种方式。它们各自具有优劣势,根据实际所需来选择合适方法,这对于LED照明行业具有非常重要的意义。接下来,本文将详细介绍
    的头像 发表于 09-04 17:48 5481次阅读

    软包电池优劣势有哪些?

    软包电池优劣势有哪些? 软包电池是一种新型的电池类型,相对于传统的硬包电池有着一些优势和劣势。 第一部分:引言 软包电池是一种采用软包式包装的锂离子电池,近年来在电动汽车、电子设备等领域得到
    的头像 发表于 01-10 10:30 645次阅读