UDP(用户数据报协议):为调用它的应用程序提供了一种不可靠、无连接的服务。

TCP(传输控制协议):为调用它的应用程序提供了一种可靠的、面向连接的服务。

当设计一个网络应用程序时,该应用程序的开发人员必须指定使用这两种传输协议中的一种。开发人员在创建套接字时必须指定是选择UPD还是选择TCP。

区别:

1、套接字的区别

UDP套接字是由一个包含目的IP地址和目的端口号组成的二元组来全面标识的。

TCP套接字是通过一个四元组(源IP,源端口号,目的IP,目的端口号)来标识的。

2、UDP在应用层能更好地控制要发送的数据和发送时间。

由于TCP有一个拥塞控制机制,TCP在链路非常拥塞的情况下将不满足以上要求。

3、无连接和有连接。

TCP在数据传输之前需要经过三次握手。UPD则不需要。因此UPD不会引入建立连接的时延。DNS正是由于这个原因,运行在UDP上。HTTP则是运行在TCP上的。

4、无连接状态和有连接状态

TCP需要在端系统中维护连接状态。

5、分组头部开销的大小不同。

UDP报文段8字节首部开销。

TCP报文段20个字节的首部开销。

传输层--TCP和UDP的区别的更多相关文章

  1. [TCP/IP] 传输层-TCP和UDP的使用场景

    传输层-TCP和UDP应用场景 TCP(传输控制协议) 需要将要传输的文件分段传输,建立会话,可靠传输,流量控制 UDP(用户报文协议) 一个数据包就能完成数据通信,不需要建立会话,不分段,不用流量控 ...

  2. 计算机网络(7): 传输层TCP和UDP以及TCP的工作方式

    UDP:无连接:不保证可靠:面向报文的: TCP:面向连接:提供可靠交付:面向字节流(把应用层的数据分包,每个包装一些字节:不关心应用层给的包多大,而是根据网络状况,窗口大小决定) TCP报文: 序号 ...

  3. 传输层TCP和UDP

    TCP协议        传输控制协议        TCP是面向连接.可靠的进程到进程通信的协议        TCP提供全双工工服务,即数据可在同一时间双向传输        三次握手:      ...

  4. OSI参考模型及各层功能,TCP与UDP的区别

    OSI参考模型:ISO/IEC 7498标准定义了网络互联的7层结构模型,即开放系统互连参考模型. OSI参考模型定义了开放系统的层次结构.层次之间的相互关系,以及各层所包括的可能的服务.OSI的服务 ...

  5. TCP和UDP的区别(转)

    TCP协议与UDP协议的区别    首先咱们弄清楚,TCP协议和UCP协议与TCP/IP协议的联系,很多人犯糊涂了,一直都是说TCP/IP协议与UDP协议的区别,我觉得这是没有从本质上弄清楚网络通信! ...

  6. [译]TCP和UDP的区别

    译者:华科小涛:http://www.cnblogs.com/hust-ghtao/ 最近开始学习计算机网络的知识,找了些英文的资料,翻译过来,一是为了深入学习网络,也是为了锻炼自己看英文文档的能力. ...

  7. 【基础网络】TCP与UDP 的区别

    TCP协议与UDP协议的区别    首先咱们弄清楚,TCP协议和UCP协议与TCP/IP协议的联系,很多人犯糊涂了,一直都是说TCP/IP协议与UDP协议的区别,我觉得这是没有从本质上弄清楚网络通信! ...

  8. TCP和UDP的区别(Socket)

    TCP和UDP区别 TCP和UDP编程区别 TCP编程的服务器端一般步骤是:  1.创建一个socket,用函数socket():  2.设置socket属性,用函数setsockopt(); * 可 ...

  9. 【转】TCP/IP协议中TCP和UDP的区别

    TCP协议与UDP协议的区别    首先咱们弄清楚,TCP协议和UCP协议与TCP/IP协议的联系,很多人犯糊涂了,一直都是说TCP/IP协议与UDP协议的区别,我觉得这是没有从本质上弄清楚网络通信! ...

随机推荐

  1. 使用FreeHttp强制登出微信公众号登陆状态(实现~原理)

    概述 我们使用的部分网站设计成一旦登录即不允许用户手动退出,现实场景中是没有问题的 但如果是在测试或调试过程中就会有强制登出的需求 如果当前使用的是PC浏览器,您或许可以通过调试模式清除保持登录信息的 ...

  2. Neutron Vlan Network 学习

    vlan network 是带 tag 的网络,是实际应用最广泛的网络类型.    下图是 vlan100 网络的示例.   1. 三个 instance 通过 TAP 设备连接到名为 brqXXXX ...

  3. MySQL主从复制(一)

    whereis...命令的使用:

  4. mysql-笔记-datetime

    1 adddate(date,interval expr unit)--同 date_add() select date_add('2019-4-20',interval 31 day); selec ...

  5. js回调地域 和 用promise解决方法

    回调地狱: function3({cb3()}){ function2({cb2(cb3)}){ //cb2触发了cb3,并传值 function1({cb1(cb2)}){ //cb1触发了cb2, ...

  6. oracle wm_concat 函数无法使用的情况下,使用LISTAGG()函数

    http://dacoolbaby.iteye.com/blog/1698957 --20180327 重写wm_concat函数,解决行数超过上限问题 /*执行前请将APPS替换为当前登录用户*/ ...

  7. 简单的连接数据库的java程序模板

    简单的连接数据库的java程序,方便临时使用: import java.sql.*; import java.io.*; import java.sql.DriverManager; import j ...

  8. PHP——??空合并运算符和?:三元运算符

    前言 在上一篇随笔,用三元运算符简单写的一个东西,引发了对他的兴趣,所以打算研究下. PHP7的新特性: https://php.net/manual/zh/migration70.new-featu ...

  9. Luogu4494 [HAOI2018]反色游戏 【割顶】

    首先发现对于一个联通块有奇数个黑点,那么总体来说答案无解.这个很容易想,因为对每个边进行操作会同时改变两个点的颜色,异或值不变. 然后一个朴素的想法是写出异或方程进行高斯消元. 可以发现高斯消元的过程 ...

  10. spring-webmvc-DispatcherServlet

    Spring Web MVC is the original web framework built on the Servlet API and has been included in the S ...