IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> 网络协议 -> TCP与UDP的特点以及TCP与UDP的区别 -> 正文阅读

[网络协议]TCP与UDP的特点以及TCP与UDP的区别

TCP/IP运输层的两个主要协议分别是TCP(传输控制协议)与UDP(用户数据报协议)。传送的数据单位分别叫“TCP报文段”或“UDP用户数据报”

UDP(用户数据报协议)

主要特点:
1)无连接的,发送数据之前不需要连接,减少了开销。
2)尽最大努力交付。即不保证可靠交付。
3)面向报文。发送方的UDP对应用程序交下来的报文,在添加首部后就向下交付IP层。同样的,IP层交上来的UDP用户数据报,去除首部后就原封不动的交付上面的应用进程。也就是说,一次交付一个完整的报文。
4)没有拥塞控制。因此网络拥塞不会使主机发送速率降低。但是可能会丢失一些数据。
5)支持一对一,一对多,多对一和多对多的交互通信。
6)UDP首部开销小,只有8个字节,比TCP的20个字节的首部要短。?

TCP(传输控制协议)

主要特点:

1)面向连接的运输层协议。这就是说,应用程序在使用TCP协议之前,必须先建立TCP连接。在传送数据完毕后,必须释放已经建立的TCP连接。也就是说,应用进程之间的通信好像在“打电话”,通话之前要先拨号建立连接,通话结束后要挂机释放连接。

2)每一条TCP只能有两个端点。每一条TCP连接只能是点对点的(一对一)。

3)TCP提供可靠交付。通过TCP连接传送的数据,无差错、不丢失不重复,并且按序到达。

4)TCP提供全双工通信(全双工通信:即通信的双方可以同时发送和接收信息的信息交互方式。半双工通信:即通信的双方都可以发送和接受信息,但同一时刻只能有一个方向。)。

4)面向字节流。TCP中的“流”指的是流入到进程或从进程流出的字节序列。发送方要先把数据转化为字节流写入发送缓存进行发送,且接收方必须有能力识别字节流。

UDP与TCP的区别

1)UDP在传送数据之前不需要先建立连接。远地主机运输层在收到UDP报文后,不需要给出任何确认。因此UDP不提供可靠交付,但是效率高。TCP则提供面向连接的服务。在传送数据之前必须先建立连接,数据传送结束后要释放连接。TCP要提供可靠的、面向连接的运输服务,因此不可避免地增加了许多的开销,如确认、流量控制等。

2)TCP和UDP在发送报文时所采用的方式完全不同。TCP并不关心进程一次把多长的报文发送到TCP的缓存中,而是根据对方给出的窗口值和当前网络拥塞程度决定一个报文段包含多少字节,而UDP发送报文长度是应用进程给出的。如果应用进程传送到TCP缓存的数据块太长,TCP就划分短一些再传送。若过短也可以等待积累足够多的字节后再构成报文段发送出去。

3)UDP程序结构比较简单。它的首部最少为8字节而TCP最少为20字节。

4)UDP不保证数据的顺序结构,而TCP必须保证数据的顺序结构。

5)TCP面向字节流,实际上是TCP把数据看成一连串无结构的字节流;UDP是面向报文的,UDP没有拥塞控制,因此网络出现拥塞不会使源主机的发送速率降低(对实时应用很有用,如IP电话,实时视频会议等)

  网络协议 最新文章
使用Easyswoole 搭建简单的Websoket服务
常见的数据通信方式有哪些?
Openssl 1024bit RSA算法---公私钥获取和处
HTTPS协议的密钥交换流程
《小白WEB安全入门》03. 漏洞篇
HttpRunner4.x 安装与使用
2021-07-04
手写RPC学习笔记
K8S高可用版本部署
mySQL计算IP地址范围
上一篇文章      下一篇文章      查看所有文章
加:2021-08-17 15:45:03  更:2021-08-17 15:45:26 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年5日历 -2024/5/17 15:57:00-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码