网络通信协议,UDP和TCP,初步了解

server/2024/9/23 12:44:40/

UDP(User Datagram Protocol)和TCP(Transmission Control Protocol)是两种常见的网络通信协议,用于在计算机网络中进行数据传输。

  • 1. TCP:Transmission Control Protocol(传输控制协议)
    • 1.1 why TCP important(为什么TCP很重要)
    • 1.2. what’s TCP(什么是TCP
    • 1.3 TCP flow contrlol(TCP流量控制)
  • 2. UDP:User Datagram Protocal(用户数据包协议)
    • 2.1 what’s UDP(什么是UDP
  • 3. 总的来说

TCPTransmission_Control_Protocol_1">1. TCP:Transmission Control Protocol(传输控制协议)

TCP_importantTCP_2">1.1 why TCP important(为什么TCP很重要)

TCP 主要的功能是希望在不可靠的网络里,建构一个可靠的传输环境,internet要连接跨地区网络,所以用连接性高但可靠性低的IP,发送packet后会遗失或干扰发生数据错误或重复传送导致到达次序混乱,基本上IP协议无法检定以上可能错误,这都必须有TCP协议侦测并采取补救措施,由此TCP流量控制就显得非常重要。

TCPTCP_4">1.2. what’s TCP(什么是TCP

TCP 是一种面向连接的协议,它提供了可靠的、有序的数据流传输服务。TCP 在通信开始之前需要进行握手过程,建立起连接后,它通过序号和确认号来保证数据的可靠性、有序性和完整性。TCP 还实现了流量控制和拥塞控制机制,以确保网络的稳定性和公平性。TCP 适用于对数据可靠性和顺序性要求较高的应用场景,如网页浏览、文件传输和电子邮件。

TCP_flow_contrlolTCP_6">1.3 TCP flow contrlol(TCP流量控制)

流量控制是一种用于在已建立的连接上进行数据传输的方法。它通过管理数据包的流动来提高传输连接的利用率。

流量控制不仅管理数据包在通信连接中的传输顺序,还涉及管理发送端和接收端的缓冲区。发送端将数据放入发送缓冲区,接收端则将接收到的数据放入接收缓冲区。

在传输过程中,可能会出现一些问题,例如数据包延迟到达接收端、传输错误等。因此,需要一种机制来处理这些问题,例如确认接收到的数据、重传丢失的数据等。

流量控制技术旨在减少缓冲区的需求,以提高系统的效率。然而,由于缓冲区无法无限扩展,因此重复使用缓冲区以减少需求也是流量控制的重要目标之一。

UDPUser_Datagram_Protocal_14">2. UDP:User Datagram Protocal(用户数据包协议)

UDPUDP_15">2.1 what’s UDP(什么是UDP

UDP 是一种简单的无连接协议,它提供了数据包的传输服务,但不提供像 TCP 那样的可靠性和错误检测机制。UDP 数据包以数据报形式发送,每个数据包都是一个独立的实体,它们可能会按顺序到达,也可能丢失或重复。UDP 适用于对实时性要求较高,但对数据可靠性要求不高的应用场景,比如音频/视频流传输和在线游戏。

3. 总的来说

UDP 适用于实时性要求高但对数据可靠性要求较低的应用场景,而 TCP 则适用于对数据可靠性和顺序性要求较高的应用场景。

重点摘要自以下链接,欲深入了解更多细节,请参阅:
1. 维基百科 - 传输控制协议
2. TCP/IP 协定与 Internet 网络:第七章 传输层协定


http://www.ppmy.cn/server/20101.html

相关文章

C++/BOOST filesystem fs::directory_iterator一个滑稽的错误

错误来源于,用 fs::directory_iterator iter(folderPath), end; 然后for循环 for (; iter ! iter_end; iter) {} 最开始没问题,后来说加个进度条,统计一下所有文件数量,用了std::distance, int totalFiles std::…

Js简单学习

1.重构 function getBook () {return data }function getBookById (id) {return data.find(e > e.id id) }const book getBookById(1)//重构获取对象中成员属性 const { id, title, genres } book console(id, title);//重构获取数组中值,other获取剩下的所有值 const {…

FTP可替代?传输替代方案应该需要具备哪些条件?

企业对数据传输的安全性、速度和稳定性的要求日益提高。传统的FTP虽然在早期广泛使用,但随着技术的发展和业务需求的增长,其局限性逐渐显现,迫切需要替代方案以满足现代企业的需求。 FTP的局限性主要表现在以下几个方面: 安全性不…

计算机网络复习(应用层)

一、概述 1、应用层对应用程序的通信提供服务 2、应用层协议定义了如下内容: 报文类型是请求还是响应各种报文类型语法字段的定义时序 3、应用层功能: 文件传输、访问管理 电子邮件 虚拟终端 查询服务和远程作业登录 二、网络服务模型 1、C/S模…

ROS机器人实战,对标古月老师HRMRP机器人(一)——机器人总体方案设计

咳咳!这个是自己的毕业设计,内容比较多就拆开发。设计实现了一款SLAM移动机器人,加机械臂完成视觉识别抓取的,同时还有语音识别控制、QT上位机控制、Web网页控制。前几年看古月老师的视频,看到古月老师设计的HRMRP&…

安装VMware后的相关配置

一、创建完虚拟机后 看看虚拟机设置里面的DVD;有没有自动检测到 二、打开虚拟机后 一直点击继续3、完成后进行重新下载VM——tools 来进行跨机子的复制粘贴,和屏幕大小的自适应注意:如果安装不了tools是灰色的 点开虚拟机设置——两个光盘都选用物理驱…

内容分发网络CDN分布式部署加速原理

哈喽,大家好,淼淼又来和大家见面啦,大家应该也知道,在应用开发市场中,软件产品的内测阶段对于确保产品质量与市场接受度至关重要,但是传统的内测分发方式往往面临地域分布广泛、网络环境各异的挑战&#xf…

力扣56. 合并区间

题目链接 力扣56. 合并区间 思路 合并 先对每个区间进行排序,左端点值小的放在前面。然后对这些区间进行合并,对于一个的结果集合,如果本区间与前一个区间不重叠,则创建一个新区间加入到这个集合中;否则取这两个区…