精华内容
下载资源
问答
  • TCP UDP区别

    2015-04-16 22:11:32
    介绍解释TCP , UDP, 他们之间的区别是什么,是我们更清楚他们之间的区别
  • TCP和UDP区别

    千次阅读 2019-06-28 11:57:54
    网络扫描仪支持 TCP UDP。以下是有关 TCP UDP 以及不同协议之间的差异的一些信息。 一般 TCP UDP 都是用于通过互联网发送数据位(称为数据包)的协议。它们都建立在互联网协议之上。换句话说,无论你是通过 ...

    网络扫描仪支持 TCP 和 UDP。以下是有关 TCP 和 UDP 以及不同协议之间的差异的一些信息。

    一般

    TCP 和 UDP 都是用于通过互联网发送数据位(称为数据包)的协议。它们都建立在互联网协议之上。换句话说,无论你是通过 TCP 或 UDP 发送数据包,该数据包都发送到 IP 地址。这些数据包受到类似的处理,因为它们从你的计算机转发到中间路由器,然后转发到目标。

    TCP 和 UDP 并不是唯一在 IP 之上工作的协议。然而,它们是使用最广泛的。广泛使用的术语"TCP/IP"是指通过 IP 的 TCP。通过 IP 的 UDP 也可以称为"UDP/IP",尽管这不是一个通用术语。

    TCP (Transmission Control Protocol)

    TCP 代表传输控制协议。它是互联网上最常用的协议。

    加载网页时,计算机会将 TCP 数据包发送到 Web 服务器的地址,并要求它将网页发送给你。Web 服务器通过发送 TCP 数据包流来响应,你的 Web 浏览器将数据包拼接在一起以形成网页并将其显示给你。当你单击链接、登录、发表评论或执行任何其他操作时,Web 浏览器会将 TCP 数据包发送到服务器,服务器将 TCP 数据包发送回。TCP 不仅仅是单向通信 - 远程系统发送数据包回来以确认它已收到你的数据包。

    TCP 保证收件人将通过对数据包进行编号来按顺序接收数据包。收件人将邮件发送回发件人,说它已收到邮件。如果发送方未获得正确的响应,它将重新发送数据包,以确保收件人收到数据包。还会检查数据包是否存在错误。TCP 与这种可靠性有关 - 使用 TCP 发送的数据包将被跟踪,因此在传输过程中不会丢失或损坏任何数据。这就是为什么文件下载不会损坏,即使有网络打盹。当然,如果收件人完全脱机,你的计算机将放弃,你将看到一条错误消息,指出它无法与远程主机通信。

    UDP (User Datagram Protocol)

    UDP 代表用户数据报协议 – 数据报与信息包是一回事。UDP 协议的工作方式与 TCP 类似,但它会抛出所有错误检查内容。所有来回的沟通和交付保证速度都减慢了速度。

    使用 UDP 时,数据包将仅发送给收件人。发送方不会等待以确保收件人收到数据包 - 它只会继续发送下一个数据包。如果你是收件人,并且错过了一些 UDP 数据包,则太糟糕了 — 你不能再请求这些数据包。不能保证你得到所有的数据包,也没有办法再次要求数据包,如果你错过了它,但失去所有这些开销意味着计算机可以更快地通信。

    当期望提升速度且不需要纠错时,使用 UDP。例如,UDP 经常用于现场广播和在线游戏。

    来源: https://www.howtogeek.com/190014/htg-explains-what-is-the-difference-between-tcp-and-udp/

    展开全文
  • TCP和UDP的最完整的区别

    万次阅读 多人点赞 2016-08-04 11:30:30
    TCP和UDP两种协议的比较汇总

    欢迎访问个人网站:码到城攻

    TCP UDP
    TCP与UDP基本区别
      1.基于连接与无连接
      2.TCP要求系统资源较多,UDP较少; 
      3.UDP程序结构较简单 
      4.流模式(TCP)与数据报模式(UDP); 
      5.TCP保证数据正确性,UDP可能丢包 

      6.TCP保证数据顺序,UDP不保证 
      
    UDP应用场景:
      1.面向数据报方式
      2.网络数据大多为短消息 
      3.拥有大量Client
      4.对数据安全性无特殊要求

      5.网络负担非常重,但对响应速度要求高
     
    具体编程时的区别
       1.socket()的参数不同 
       2.UDP Server不需要调用listen和accept 
       3.UDP收发数据用sendto/recvfrom函数 
       4.TCP:地址信息在connect/accept时确定 
       5.UDP:在sendto/recvfrom函数中每次均 需指定地址信息 
       6.UDP:shutdown函数无效

     
    编程区别
       通常我们在说到网络编程时默认是指TCP编程,即用前面提到的socket函数创建一个socket用于TCP通讯,函数参数我们通常填为SOCK_STREAM。即socket(PF_INET, SOCK_STREAM, 0),这表示建立一个socket用于流式网络通讯。 
       SOCK_STREAM这种的特点是面向连接的,即每次收发数据之前必须通过connect建立连接,也是双向的,即任何一方都可以收发数据,协议本身提供了一些保障机制保证它是可靠的、有序的,即每个包按照发送的顺序到达接收方。 

      而SOCK_DGRAM这种是User Datagram Protocol协议的网络通讯,它是无连接的,不可靠的,因为通讯双方发送数据后不知道对方是否已经收到数据,是否正常收到数据。任何一方建立一个socket以后就可以用sendto发送数据,也可以用recvfrom接收数据。根本不关心对方是否存在,是否发送了数据。它的特点是通讯速度比较快。大家都知道TCP是要经过三次握手的,而UDP没有。 


    基于上述不同,UDP和TCP编程步骤也有些不同,如下:

    TCP: 
    TCP编程的服务器端一般步骤是: 
      1、创建一个socket,用函数socket(); 
      2、设置socket属性,用函数setsockopt(); * 可选 
      3、绑定IP地址、端口等信息到socket上,用函数bind(); 
      4、开启监听,用函数listen(); 
      5、接收客户端上来的连接,用函数accept(); 
      6、收发数据,用函数send()和recv(),或者read()和write(); 
      7、关闭网络连接; 
      8、关闭监听; 

    TCP编程的客户端一般步骤是: 
      1、创建一个socket,用函数socket(); 
      2、设置socket属性,用函数setsockopt();* 可选 
      3、绑定IP地址、端口等信息到socket上,用函数bind();* 可选 
      4、设置要连接的对方的IP地址和端口等属性; 
      5、连接服务器,用函数connect(); 
      6、收发数据,用函数send()和recv(),或者read()和write(); 
      7、关闭网络连接;

    UDP:
    与之对应的UDP编程步骤要简单许多,分别如下: 
      UDP编程的服务器端一般步骤是: 
      1、创建一个socket,用函数socket(); 
      2、设置socket属性,用函数setsockopt();* 可选 
      3、绑定IP地址、端口等信息到socket上,用函数bind(); 
      4、循环接收数据,用函数recvfrom(); 
      5、关闭网络连接; 

    UDP编程的客户端一般步骤是: 
      1、创建一个socket,用函数socket(); 
      2、设置socket属性,用函数setsockopt();* 可选 
      3、绑定IP地址、端口等信息到socket上,用函数bind();* 可选 
      4、设置对方的IP地址和端口等属性; 
      5、发送数据,用函数sendto(); 
      6、关闭网络连接;

    TCP和UDP是OSI模型中的运输层中的协议。TCP提供可靠的通信传输,而UDP则常被用于让广播和细节控制交给应用的通信传输。

    UDP补充:
       UDP不提供复杂的控制机制,利用IP提供面向无连接的通信服务。并且它是将应用程序发来的数据在收到的那一刻,立刻按照原样发送到网络上的一种机制。即使是出现网络拥堵的情况下,UDP也无法进行流量控制等避免网络拥塞的行为。此外,传输途中如果出现了丢包,UDO也不负责重发。甚至当出现包的到达顺序乱掉时也没有纠正的功能。如果需要这些细节控制,那么不得不交给由采用UDO的应用程序去处理。换句话说,UDP将部分控制转移到应用程序去处理,自己却只提供作为传输层协议的最基本功能。UDP有点类似于用户说什么听什么的机制,但是需要用户充分考虑好上层协议类型并制作相应的应用程序。

    TCP补充:
      TCP充分实现了数据传输时各种控制功能,可以进行丢包的重发控制,还可以对次序乱掉的分包进行顺序控制。而这些在UDP中都没有。此外,TCP作为一种面向有连接的协议,只有在确认通信对端存在时才会发送数据,从而可以控制通信流量的浪费。TCP通过检验和、序列号、确认应答、重发控制、连接管理以及窗口控制等机制实现可靠性传输。


    TCP与UDP区别总结:
    1、TCP面向连接(如打电话要先拨号建立连接);UDP是无连接的,即发送数据之前不需要建立连接
    2、TCP提供可靠的服务。也就是说,通过TCP连接传送的数据,无差错,不丢失,不重复,且按序到达;UDP尽最大努力交付,即不保   证可靠交付
    3、TCP面向字节流,实际上是TCP把数据看成一连串无结构的字节流;UDP是面向报文的
      UDP没有拥塞控制,因此网络出现拥塞不会使源主机的发送速率降低(对实时应用很有用,如IP电话,实时视频会议等)
    4、每一条TCP连接只能是点到点的;UDP支持一对一,一对多,多对一和多对多的交互通信
    5、TCP首部开销20字节;UDP的首部开销小,只有8个字节
    6、TCP的逻辑通信信道是全双工的可靠信道,UDP则是不可靠信道

    展开全文
  • TCP UDP区别

    万次阅读 多人点赞 2018-08-04 21:57:42
    前言 ...前端的面试中经常问的 TCP UDP区别,网上也有好多内容,比如 TCP UDP区别 TCP 是面向连接的,UDP 是面向无连接的 UDP程序结构较简单 TCP 是面向字节流的,UDP 是基于...

    前言

    前端的面试中经常问的 TCP 和 UDP 的区别,网上也有好多内容,比如

    TCP 和 UDP 的区别

    • TCP 是面向连接的,UDP 是面向无连接的
    • UDP程序结构较简单
    • TCP 是面向字节流的,UDP 是基于数据报的
    • TCP 保证数据正确性,UDP 可能丢包
    • TCP 保证数据顺序,UDP 不保证

    之前也因为面试的原因了解过一下,但是面试官又问了为什么 TCP 是可靠传输,一下就露馅了,说不出来了,然后这两天就仔细了解了一下这方面的内容,还专门订阅了极客时间的趣谈网络协议,因此,这篇文章主要基于趣谈网络协议和自己的理解。

    1. UDP

    要想理解 TCP 和 UDP 的区别,首先要明白什么是 TCP,什么是 UDP

    TCP 和 UDP 是传输层的两个协议

    我们来看一下 UDP 的包头
    UDP 包头
    由上图可以看出,UDP 除了端口号,基本啥都没有了。如果没有这两个端口号,数据就不知道该发给哪个应用。

    所以 UDP 就像一个小孩子,特别简单,有如下三个特点

    UDP 的特点

    • 沟通简单,不需要大量的数据结构,处理逻辑和包头字段
    • 轻信他人。它不会建立连接,但是会监听这个地方,谁都可以传给它数据,它也可以传给任何人数据,甚至可以同时传给多个人数据。
    • 愣头青,做事不懂变通。不会根据网络的情况进行拥塞控制,无论是否丢包,它该怎么发还是怎么发

    因为 UDP 是"小孩子",所以处理的是一些没那么难的项目,并且就算失败的也能接收。基于这些特点的话,UDP 可以使用在如下场景中

    UDP 的主要应用场景

    • 需要资源少,网络情况稳定的内网,或者对于丢包不敏感的应用,比如 DHCP 就是基于 UDP 协议的。
    • 不需要一对一沟通,建立连接,而是可以广播的应用。因为它不面向连接,所以可以做到一对多,承担广播或者多播的协议。
    • 需要处理速度快,可以容忍丢包,但是即使网络拥塞,也毫不退缩,一往无前的时候

    基于 UDP 的几个例子

    • 直播。直播对实时性的要求比较高,宁可丢包,也不要卡顿的,所以很多直播应用都基于 UDP 实现了自己的视频传输协议
    • 实时游戏。游戏的特点也是实时性比较高,在这种情况下,采用自定义的可靠的 UDP 协议,自定义重传策略,能够把产生的延迟降到最低,减少网络问题对游戏造成的影响
    • 物联网。一方面,物联网领域中断资源少,很可能知识个很小的嵌入式系统,而维护 TCP 协议的代价太大了;另一方面,物联网对实时性的要求也特别高。比如 Google 旗下的 Nest 简历 Thread Group,推出了物联网通信协议 Thread,就是基于 UDP 协议的

    还有一些,但是写的太多了也记不住,所以主要记住这几个就够了

    2. TCP

    首先是 TCP 的包头格式
    TCP 包头

    TCP 的包头有哪些内容,分别有什么用

    • 首先,源端口和目标端口是不可少的。
    • 接下来是包的序号。主要是为了解决乱序问题。不编好号怎么知道哪个先来,哪个后到
    • 确认序号。发出去的包应该有确认,这样能知道对方是否收到,如果没收到就应该重新发送,这个解决的是不丢包的问题
    • 状态位。SYN 是发起一个链接,ACK 是回复,RST 是重新连接,FIN 是结束连接。因为 TCP 是面向连接的,因此需要双方维护连接的状态,这些状态位的包会引起双方的状态变更
    • 窗口大小,TCP 要做流量控制,需要通信双方各声明一个窗口,标识自己当前的处理能力。

    通过对 TCP 头的解析,我们知道要掌握 TCP 协议,应该重点关注以下问题:

    • 顺序问题
    • 丢包问题
    • 连接维护
    • 流量控制
    • 拥塞控制

    2.1 TCP 的三次握手

    所有的问题,首先都要建立连接,所以首先是连接维护的问题

    TCP 的建立连接称为三次握手,可以简单理解为下面这种情况

    A:您好,我是 A
    B:您好 A,我是 B
    A:您好 B

    至于为什么是三次握手我这里就不细讲了,可以看其他人的博客,总结的话就是通信双方全都有来有回

    对于 A 来说它发出请求,并收到了 B 的响应,对于 B 来说它响应了 A 的请求,并且也接收到了响应。

    TCP 的三次握手除了建立连接外,主要还是为了沟通 TCP 包的序号问题。

    A 告诉 B,我发起的包的序号是从哪个号开始的,B 同样也告诉 A,B 发起的 包的序号是从哪个号开始的。

    双方建立连接之后需要共同维护一个状态机,在建立连接的过程中,双方的状态变化时序图如下所示
    状态变化时序图
    这是网上经常见到的一张图,刚开始的时候,客户端和服务器都处于 CLOSED 状态,先是服务端主动监听某个端口,处于 LISTEN 状态。然后客户端主动发起连接 SYN,之后处于 SYN-SENT 状态。服务端接收了发起的连接,返回 SYN,并且 ACK ( 确认 ) 客户端的 SYN,之后处于 SYN-SENT 状态。客户端接收到服务端发送的 SYN 和 ACK 之后,发送 ACK 的 ACK,之后就处于 ESTAVLISHED 状态,因为它一发一收成功了。服务端收到 ACK 的 ACK 之后,也处于 ESTABLISHED 状态,因为它也一发一收了。

    2.2 TCP 四次挥手

    说完建立连接,再说下断开连接,也被称为四次挥手,可以简单理解如下

    A:B 啊,我不想玩了
    B:哦,你不想玩了啊,我知道了
    这个时候,只是 A 不想玩了,即不再发送数据,但是 B 可能还有未发送完的数据,所以需要等待 B 也主动关闭。
    B:A 啊,好吧,我也不玩了,拜拜
    A:好的,拜拜

    这样整个连接就关闭了,当然上面只是正常的状态,也有些非正常的状态(比如 A 说完不玩了,直接跑路,B 发起的结束得不到 A 的回答,不知道该怎么办或则 B 直接跑路 A 不知道该怎么办),TCP 协议专门设计了几个状态来处理这些非正常状态
    断开连接状态时序图
    断开的时候,当 A 说不玩了,就进入 FIN_WAIT_1 的状态,B 收到 A 不玩了的消息后,进入 CLOSE_WAIT 的状态。

    A 收到 B 说知道了,就进入 FIN_WAIT_2 的状态,如果 B 直接跑路,则 A 永远处与这个状态。TCP 协议里面并没有对这个状态的处理,但 Linux 有,可以调整 tcp_fin_timeout 这个参数,设置一个超时时间。

    如果 B 没有跑路,A 接收到 B 的不玩了请求之后,从 FIN_WAIT_2 状态结束,按说 A 可以跑路了,但是如果 B 没有接收到 A 跑路的 ACK 呢,就再也接收不到了,所以这时候 A 需要等待一段时间,因为如果 B 没接收到 A 的 ACK 的话会重新发送给 A,所以 A 的等待时间需要足够长。

    2.3 累计确认

    TCP 如何实现可靠传输?

    首先为了保证顺序性,每个包都有一个 ID。在建立连接的时候会商定起始 ID 是什么,然后按照 ID 一个个发送,为了保证不丢包,需要对发送的包都要进行应答,当然,这个应答不是一个一个来的,而是会应答某个之前的 ID,表示都收到了,这种模式成为累计应答累计确认

    为了记录所有发送的包和接收的包,TCP 需要发送端和接收端分别来缓存这些记录,发送端的缓存里是按照包的 ID 一个个排列,根据处理的情况分成四个部分

    • 发送并且确认的
    • 发送尚未确认的
    • 没有发送等待发送的
    • 没有发送并且暂时不会发送的

    这里的第三部分和第四部分就属于流量控制的内容

    在 TCP 里,接收端会给发送端报一个窗口大小,叫 Advertised window。这个窗口应该等于上面的第二部分加上第三部分,超过这个窗口,接收端做不过来,就不能发送了

    于是,发送端要保持下面的数据结构
    发送端数据结构
    对于接收端来讲,它的缓存里面的内容要简单一些

    • 接收并且确认过的
    • 还没接收,但是马上就能接收的
    • 还没接收,但也无法接收的

    对应的数据结构如下
    接收端的数据结构

    2.4 顺序问题和丢包问题

    结合上面的图看,在发送端,1、2、3 已发送并确认;4、5、6、7、8、9 都是发送了还没确认;10、11、12 是还没发出的;13、14、15 是接收方没有空间,不准备发的。

    在接收端来看,1、2、3、4、5 是已经完成 ACK 但是还没读取的;6、7 是等待接收的;8、9 是已经接收还没有 ACK 的。

    发送端和接收端当前的状态如下:

    • 1、2、3 没有问题,双方达成了一致
    • 4、5 接收方说 ACK 了,但是发送方还没收到
    • 6、7、8、9 肯定都发了,但是 8、9 已经到了,6、7 没到,出现了乱序,缓存着但是没办法 ACK。

    根据这个例子可以知道顺序问题和丢包问题都有可能存在,所以我们先来看确认与重传机制

    假设 4 的确认收到了,5 的 ACK 丢了,6、7 的数据包丢了,该怎么办?

    一种方法是超时重试,即对每一个发送了但是没有 ACK 的包设定一个定时器,超过了一定的事件就重新尝试。这个时间必须大于往返时间,但也不宜过长,否则超时时间变长,访问就变慢了。

    如果过一段时间,5、6、7 都超时了就会重新发送。接收方发现 5 原来接收过,于是丢弃 5;6 收到了,发送 ACK,要求下一个是 7,7 不幸又丢了。当 7 再次超时的时候,TCP 的策略是超时间隔加倍。每当遇到一次超时重传的时候,都会讲下一次超时时间间隔设为先前值的两倍。

    超时重传的机制是超时周期可能相对较长,是否有更快的方式呢?

    有一个快速重传的机制,即当接收方接收到一个序号大于期望的报文段时,就检测到了数据流之间的间隔,于是发送三个冗余的 ACK,客户端接收到之后,知道数据报丢失,于是重传丢失的报文段。

    例如,接收方发现 6、8、9 都接收了,但是 7 没来,所以肯定丢了,于是发送三个 6 的 ACK,要求下一个是 7。客户端接收到 3 个,就会发现 7 的确又丢了,不等超时,马上重发。

    2.5 流量控制的问题

    在流量控制的机制里面,在对于包的确认中,会携带一个窗口的大小

    简单的说一下就是接收端在发送 ACK 的时候会带上缓冲区的窗口大小,但是一般在窗口达到一定大小才会更新窗口,因为每次都更新的话,刚空下来就又被填满了

    2.6 拥塞控制的问题

    也是通过窗口的大小来控制的,但是检测网络满不满是个挺难的事情,所以 TCP 发送包经常被比喻成往谁管理灌水,所以拥塞控制就是在不堵塞,不丢包的情况下尽可能的发挥带宽。

    水管有粗细,网络有带宽,即每秒钟能发送多少数据;水管有长度,端到端有时延。理想状态下,水管里面的水 = 水管粗细 * 水管长度。对于网络上,通道的容量 = 带宽 * 往返时延。

    如果我们设置发送窗口,使得发送但未确认的包为通道的容量,就能撑满整个管道。

    如图所示,假设往返时间为 8 秒,去 4 秒,回 4 秒,每秒发送一个包,已经过去了 8 秒,则 8 个包都发出去了,其中前四个已经到达接收端,但是 ACK 还没返回,不能算发送成功,5-8 后四个包还在路上,还没被接收,这个时候,管道正好撑满,在发送端,已发送未确认的 8 个包,正好等于带宽,也即每秒发送一个包,也即每秒发送一个包,乘以来回时间 8 秒。

    如果在这个基础上调大窗口,使得单位时间可以发送更多的包,那么会出现接收端处理不过来,多出来的包会被丢弃,这个时候,我们可以增加一个缓存,但是缓存里面的包 4 秒内肯定达不到接收端课,它的缺点会增加时延,如果时延达到一定程度就会超时重传

    TCP 拥塞控制主要来避免两种现象,包丢失和超时重传,一旦出现了这些现象说明发送的太快了,要慢一点。

    具体的方法就是发送端慢启动,比如倒水,刚开始倒的很慢,渐渐变快。然后设置一个阈值,当超过这个值的时候就要慢下来

    慢下来还是在增长,这时候就可能水满则溢,出现拥塞,需要降低倒水的速度,等水慢慢渗下去。

    拥塞的一种表现是丢包,需要超时重传,这个时候,采用快速重传算法,将当前速度变为一半。所以速度还是在比较高的值,也没有一夜回到解放前。

    总结及面试问题

    TCP 和 UDP 的区别

    • TCP 是面向连接的,UDP 是面向无连接的
    • UDP程序结构较简单
    • TCP 是面向字节流的,UDP 是基于数据报的
    • TCP 保证数据正确性,UDP 可能丢包
    • TCP 保证数据顺序,UDP 不保证

    什么是面向连接,什么是面向无连接

    在互通之前,面向连接的协议会先建立连接,如 TCP 有三次握手,而 UDP 不会

    TCP 为什么是可靠连接

    • 通过 TCP 连接传输的数据无差错,不丢失,不重复,且按顺序到达。
    • TCP 报文头里面的序号能使 TCP 的数据按序到达
    • 报文头里面的确认序号能保证不丢包,累计确认及超时重传机制
    • TCP 拥有流量控制及拥塞控制的机制

    TCP 的顺序问题,丢包问题,流量控制都是通过滑动窗口来解决的
    拥塞控制时通过拥塞窗口来解决的

    展开全文
  • TCP和UDP区别 ○ UDP 是无连接的,即发送数据之前不需要建立连接。 ○ UDP使用尽最大努力交付,即不保证可靠交付,同时也不使用拥塞控制。 ○ UDP 是面向报文的。UDP 没有拥塞控制,很适合多媒体通信的要求。 ○ ...

    • TCP和UDP区别
    ○ UDP 是无连接的,即发送数据之前不需要建立连接。
    ○ UDP使用尽最大努力交付,即不保证可靠交付,同时也不使用拥塞控制。
    ○ UDP 是面向报文的。UDP 没有拥塞控制,很适合多媒体通信的要求。
    ○ UDP 支持一对一、一对多、多对一和多对多的交互通信。
    ○ UDP 的首部开销小,只有 8 个字节。
    ○ TCP 是面向连接的运输层协议。
    ○ 每一条 TCP 连接只能有两个端点(endpoint),每一条 TCP连接只能是点对点的(一对一)。
    ○ TCP 提供可靠交付的服务。
    ○ TCP提供全双工通信。
    ○ TCP是面向字节流。
    ○ 首部最低20个字节。

    • TCP加快传输效率的方法
    ○ 采取一块确认的机制

    TCP和UDP区别:http://blog.csdn.net/xiaobangkuaipao/article/details/76793702。
    TCP加快传输效率的方法:采用连续ARQ,而不用停止等待ARQ
    http://blog.csdn.net/guoweimelon/article/details/50879588

    展开全文
  • 面试1——TCP和UDP区别

    2016-05-01 20:36:56
    TCP和UDP区别
  • TCP和UDP区别和优缺点

    千次阅读 2018-09-24 21:55:34
    TCPUDP区别总结: 1、TCP面向连接(如打电话要先拨号建立连接);UDP是无连接的,即发送数据之前不需要建立连接 2、TCP提供可靠的服务。也就是说,通过TCP连接传送的数据,无差错,不丢失,不重复,且按序到达;...
  • TCP和UDP区别?如何改进TCP

    千次阅读 2018-02-28 15:08:48
    TCP和UDP区别:http://blog.csdn.net/xiaobangkuaipao/article/details/76793702。 TCP加快传输效率的方法:采用连续ARQ,而不用停止等待ARQ http://blog.csdn.net/guoweimelon/article/details/50879588...
  • 一、TCP和UDP区别 TCP是面向连接,传输可靠,以字节流的形式传输,传输效率慢,所需资源多,应用在要求通信数据可靠的场合,首部字节20-60. UDP面向无连接,传输不可靠,以数据报文段的形式传输,传输效率快,所需...
  • TCP和UDP区别及用法

    千次阅读 2018-07-07 14:13:19
    1、TCPUDP区别总结:1、TCP面向连接(如打电话要先拨号建立连接);UDP是无连接的,即发送数据之前不需要建立连接2、TCP提供可靠的服务。也就是说,通过TCP连接传送的数据,无差错,不丢失,不重复,且按序到达;UDP...
  • TCP和UDP区别以及报文头

    万次阅读 2019-05-05 18:21:21
    UDP(用户数据报协议) UDP特点 UDP只在IP数据报服务的基础上增加了少量的功能:复用与分用、对整个...所谓『面向报文』就是指:UDP数据传输的单位是报文,且不会对数据作任何 拆分 拼接 操作。 在发送端,应用程...
  • 6、TCP和UDP区别

    2019-08-20 11:24:06
    区别TCP面向连接,经历三次握手四次断开,对每一个数据报需要确认;UDP不建立可靠连接 TCP报头20字节;UDP报头8字节 TCP只能一对一传输;UDP支持一对一、一对多、多对一、多对多传输 TCP需要维护连接状态;...
  • TCP和UDP区别通俗理解

    万次阅读 2016-07-29 09:46:13
     首先咱们弄清楚,TCP协议UCP协议与TCP/IP协议的联系,很多人犯糊涂了,一直都是说TCP/IP协议与UDP协议的区别,我觉得这是没有从本质上弄清楚网络通信! TCP/IP协议是一个协议簇。里面包括很多协议的。UDP只是...
  • 终于懂了TCP和UDP协议区别

    万次阅读 多人点赞 2020-03-26 12:03:28
    终于懂了TCP和UDP协议区别
  • APP开发实战20-TCP和UDP区别

    千次阅读 2016-05-15 23:08:55
    6.4TCP和UDP区别 6.4.1面向连接服务 TCP提供的是面向连接服务,传输数据要经过三个阶段: (1)数据传输前,先建立连接 (2)连接建立后再传输数据 (3)数据传送完后,释放连接 TCP所做的工作包括把应用程序交给它...
  • HTTP与HTTPS的区别 TCP和UDP区别

    千次阅读 2019-07-28 14:13:59
    超文本传输协议HTTP协议被用于在Web浏览器网站服务器之间传递信息,HTTP协议以明文方式发送内容,不提供任何方式的数据加密,如果攻击者截取了Web浏览器网站服务器之间的传输报文,就可以直接读懂其中的信息,...
  • TCP和UDP区别和优缺点

    万次阅读 多人点赞 2017-08-06 20:32:16
    1、TCPUDP区别总结: 1、TCP面向连接(如打电话要先拨号建立连接);UDP是无连接的,即发送数据之前不需要建立连接 2、TCP提供可靠的服务。也就是说,通过TCP连接传送的数据,无差错,不丢失,不重复,且按序到达;...
  • tcp udp区别

    千次阅读 多人点赞 2019-06-27 11:50:20
    tcp udp区别TCP 协议官方定义 维基百科介绍 UDP 协议官方定义 维基百科介绍 可参考:TCPUDP 协议的区别的详细分析基于 TCPUDP 协议编程差异 TCP/IP 协议是一个协议簇,包括很多协议。命名为 TCP...
  • TCP和UDP之间的区别

    2017-01-18 11:16:25
    TCP和UDP区别文章转自TCP和UDP区别 - TCP UDP 是否连接 面向连接 面向非连接 传输可靠性 可靠的 不可靠的 应用场合 传输大量的数据 少量数据 速度 慢 快 OSI TCP/IP 模型在传输层定义两种传输协议...
  • 1、TCP是面向链接的,虽然说网络的不安全不稳定特性决定了多少次握手都不能保证连接的可靠性,但TCP的三次握手在最低限度上(实际上也很大程度上保证了)保证了连接的可靠性; 而UDP不是面向连接的,UDP传送数据前并不...
  • TCP和UDP区别

    2021-09-10 08:07:24
    TCP和UDP是传输层提供的两个协议。
  • 传输层TCP和UDP区别

    2020-08-04 15:01:32
    分别介绍TCP和UDP协议,及它们之间的区别

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 400,865
精华内容 160,346
关键字:

tcp和udp的区别