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

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

3天内不再提示

TCP与UDP协议的工作原理是怎么样的

Wildesbeast 来源:今日头条 作者:ThunderMoon 2020-02-15 11:45 次阅读

一、TCP工作原理

TCP建立连接的过程

TCP是一种可靠的,面向连接的全双工传输层协议。 TCP连接的建立是一个三次握手的过程。

1、主机A(通常也称为客户端)发送一个标识了SYN的数据段,表示期望与服务器A建立连接, 此数据段的序列号(seq)为a。

2、服务器A回复标识了SYN+ ACK的数据段,此数据段的序列号(seq)为b,确认序列号为主机A的序列号加1(a+1),以此作为对主机A的SYN报文的确认。

3、主机A发送一个标识了ACK的数据段,此数据段的序列号(seq)为a+1,确认序列号为服务器A的序列号加1(b+1),以此作为对服务器A的SYN报文的确认。

TCP传输过程

TCP的可靠传输还体现在TCP使用了确认技术来确保目的设备收到了从源设备发来的数据并且是准确无误的。

确认技术的工作原理如下:

目的设备接收到源设备发送的数据段时,会向源端发送确认报文,源设备收到确认报文后继续发送数据段,如此重复。

TCP流量控制

滑动窗口机制运用TCP报文段中的窗口大小字段来控制,发送方的发送窗口不可以大于接收方发回的窗口大小。

考虑一种特殊的情况,就是接收方若没有缓存足够使用,就会发送零窗口大小的报文,此时发送放将发送窗口设置为0,停止发送数据。

TCP关闭连接

主机在关闭连接之前,要确认收到来自对方的ACK。

TCP支持全双工模式传输数据,这意味着同一时刻两个方向都可以进行数据的传输。在传输数据之前,TCP通过三次握手建立的实际上是两个方向的连接,因此在传输完毕后,两个方向的连接必须都关闭。TCP连接的建立是一个三次握手的过程,而TCP连接的终止则要经过四次握手。

二、UDP工作原理

UDP传输过程

使用UDP传输数据时,由应用程序根据需要提供报文到达确认、排序、流量控制等功能。

通常情况下,UDP采用实时传输机制和时间戳来传输语音和视频数据。

UDP不提供重传机制,占用资源小,处理效率高。

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

    关注

    12

    文章

    8099

    浏览量

    82483
  • TCP
    TCP
    +关注

    关注

    8

    文章

    1268

    浏览量

    78270
  • UDP
    UDP
    +关注

    关注

    0

    文章

    311

    浏览量

    33615
收藏 人收藏

    评论

    相关推荐

    TCP协议UDP协议对比 UDP协议的原理及应用

    前言 TCP协议在不可靠的网络环境上提供了可靠的通信通道,隐藏了大量的底层细节,使应用程序更加简洁。但有些应用并不需要这么高的可靠性,并不需要按序交付,而且TCP为了提高可靠性也增加了延时,在某些
    的头像 发表于 10-26 15:05 3101次阅读
    <b class='flag-5'>TCP</b><b class='flag-5'>协议</b>和<b class='flag-5'>UDP</b><b class='flag-5'>协议</b>对比 <b class='flag-5'>UDP</b><b class='flag-5'>协议</b>的原理及应用

    通信必备知识!TCPUDP协议介绍及使用

    TCPUDP是两个最常用的通讯协议TCP是面向连接的协议,需要在收发数据前与对方建立可靠的连接,建立连接的过程为3次握手,断开连接的过程
    的头像 发表于 03-15 08:19 1008次阅读
    通信必备知识!<b class='flag-5'>TCP</b>与<b class='flag-5'>UDP</b><b class='flag-5'>协议</b>介绍及使用

    TCP协议UDP协议的区别有哪些

    计算机网络简答题1、TCP 协议UDP 协议的区别有哪些?(1)TCP 属于面向连接的协议
    发表于 08-06 08:43

    TCP协议UDP协议的区别有哪些?

    TCP协议UDP协议的区别有哪些?IP地址与MAC地址的区别是什么?ARP协议工作原理是什么
    发表于 11-12 06:34

    TCPUDP协议简析

    一、前言TCPUDP协议TCP/IP协议的核心。TCP (Transmission Cont
    发表于 12-15 08:13

    通讯协议TCPUDP协议使用方法

    通讯协议TCPUDP协议UDP会把数据一股脑儿地发送出去,并不会在意是否全部收到,适用于广播类型多对多通讯类型,缺点是具有一定的丢包率
    发表于 01-21 14:53

    tcpudp协议的异同

    UDP 校验和则是包含 UDP 首部和数据在内的校验结果。 TCP协议 TCP协议基于网络层的
    的头像 发表于 11-12 14:45 3634次阅读
    <b class='flag-5'>tcp</b>和<b class='flag-5'>udp</b><b class='flag-5'>协议</b>的异同

    TCP协议UDP协议的区别和相同点有哪些 一文看懂TCP协议UDP协议的优缺点

    首先咱们弄清楚,TCP协议和UCP协议TCP/IP协议的联系,很多人犯糊涂了,一直都是说TCP
    的头像 发表于 05-26 14:35 8358次阅读
    <b class='flag-5'>TCP</b><b class='flag-5'>协议</b>与<b class='flag-5'>UDP</b><b class='flag-5'>协议</b>的区别和相同点有哪些 一文看懂<b class='flag-5'>TCP</b><b class='flag-5'>协议</b>与<b class='flag-5'>UDP</b><b class='flag-5'>协议</b>的优缺点

    TCP协议UDP协议的区别

    TCP/IP协议中有两个具有代表性的传输层协议,分别是TCP协议UDP
    的头像 发表于 03-21 10:39 856次阅读

    基于Socket的UDPTCP编程解析 1

    TCP(传输控制协议)和UDP(用户数据报协议是网络体系结TCP/IP模型中传输层一层中的两个不同的通信
    的头像 发表于 05-18 17:22 724次阅读
    基于Socket的<b class='flag-5'>UDP</b>和<b class='flag-5'>TCP</b>编程解析 1

    基于Socket的UDPTCP编程解析 2

    TCP(传输控制协议)和UDP(用户数据报协议是网络体系结TCP/IP模型中传输层一层中的两个不同的通信
    的头像 发表于 05-18 17:22 455次阅读
    基于Socket的<b class='flag-5'>UDP</b>和<b class='flag-5'>TCP</b>编程解析 2

    TCP协议UDP协议最核心的区别是什么?

    对于TCP协议UDP协议,大家应该都有所耳闻。TCP协议
    发表于 06-15 09:37 344次阅读
    <b class='flag-5'>TCP</b><b class='flag-5'>协议</b>和<b class='flag-5'>UDP</b><b class='flag-5'>协议</b>最核心的区别是什么?

    udp是什么协议 TCPUDP的区别

    TCP协议提供可靠的数据传输,UDP协议提供尽量高效的数据传输。TCP协议通过使用序列号、确认应
    的头像 发表于 06-26 17:47 7053次阅读

    什么是UDP协议?什么场景下会去用这种协议呢?

    传输层除了TCP协议,还有个很重要的协议UDP协议。接下来看下UDP
    发表于 07-10 15:50 693次阅读
    什么是<b class='flag-5'>UDP</b><b class='flag-5'>协议</b>?什么场景下会去用这种<b class='flag-5'>协议</b>呢?

    TCP/IP协议进阶课程:5、UDP协议

    电子发烧友网站提供《TCP/IP协议进阶课程:5、UDP协议.pdf》资料免费下载
    发表于 07-31 11:48 0次下载
    <b class='flag-5'>TCP</b>/IP<b class='flag-5'>协议</b>进阶课程:5、<b class='flag-5'>UDP</b><b class='flag-5'>协议</b>