zoukankan      html  css  js  c++  java
  • 以太网基础知识:TCP与UDP的区别

     

    这里先简单的说一下TCP与UDP的区别:
    1。基于连接与无连接
    2。对系统资源的要求(TCP较多,UDP少)
    3。UDP程序结构较简单
    4。流模式与数据报模式
    5。TCP保证数据正确性,UDP可能丢包,TCP保证数据顺序,UDP不保证另外结合GPRS网络的情况具体的谈一下他们的区别:
    1。TCP传输存在一定的延时,大概是1600MS(移动提供),UDP响应速度稍微快一些。
    2。TCP包头的最小大小.就是20字节. UDP的包小很多.确实如此.因为UDP是非可靠连接.设计初衷就是尽可能快的将数据包发送出去.所以UDP协议显得非常精简.

     TCP和UDP是两种最为著名的运输层协议,二者都使用IP作为网络层协议。

     虽然TCP使用不可靠的IP服务,但它却提供一种可靠的运输层服务。本书第17章到第22章将详细讨论TCP的内部操作细节。然后,我们将介绍一些TCP的应用,如第26章中的Telnet和Rlogin,第27章中的FTP,以及第28章中的SMTP等。这些应用通常都是用户进程。

        UDP为应用程序发送和接收数据报。一个数据报是指从发送方传输到接收方的一个信息单元(例如,发送方指定的一定字节数的信息)。但是与TCP不同的是,UDP是不可靠的,它不能保证数据报能安全无误地到达最终目的。本书第11章将讨论UDP,然后在第14章(域名系统:Domain Name System),第15章(简单文件传输协议Trivial File Transfer Protocol),以及第16章(引导程序协议Bootstrap Protocol)介绍使用UDP的应用程序。SNMP(简单网络管理协议)也使用了UDP协议,但是由于它还要处理许多其他的协议,因此本书把它留到第25章再进行讨论。

        IP是网络层上的主要协议,同时被TCP和UDP使用。TCP和UDP的每组数据都通过端系统和每个中间路由器中的IP层在互连网中进行传输。在图1.4中,我们给出了一个直接访问IP的应用程序。这是很少见的,但也是可能的。(一些较老的路由选择协议就是以这种方式来实现的。当然新的运输层协议也有可能试用这种方式。)第3章主要讨论IP协议,但是为了使内容更加有针对性,一些细节将留在后面的章节中进行讨论。第9章和第10章讨论IP如何进行路由选择。

        ICMP是IP协议的附属协议。IP层用它来与其他主机或路由器交换错误报文和其他重要信息。第6章对ICMP的有关细节进行讨论。尽管ICMP主要被IP使用,但应用程序也有可能访问它。我们将分析两个流行的诊断工具,Ping和Traceroute(第7章和第8章),它们都使用了ICMP。

        IGMP是Internet组管理协议。它用来把一个UDP数据报多播到多个主机。我们在第12章中描述广播(把一个UDP数据报发送到某个指定网络上的所有主机)和多点传送的一般特性,然后在第13章中对IGMP协议本身进行描述。

        ARP(地址解析协议)和RARP(逆地址解析协议)是某些网络接口(如以太网和令牌环网)使用的特殊协议,用来转换IP层和网络接口层使用的地址。我们分别在第4章和第5章对这两种协议进行分析和介绍。

    TCP/IP协议族分为四层:链路层,网络层,运输层和应用层,每一层各有不同的责任。在TCP/IP中,网络层和运输层之间的区别是最为关键的:网络层(IP)提供点到点的服务,而运输层(TCP和UDP)提供端到端的服务。

     
    结论就是tcp是面向边向连接的,所以会慢一些,但安全些,udp则相反 。

    TCP(传输控制协议) UDP(用户数据报协议) TCP和UDP都是属于传输层协议,负责承担数据传输的任务,其中TCP属于可靠的面向连接服务,UDP是不可靠的无连接数据报服务 TCP需要经过三次握手才能建立一个安全连接,所以效率比较低,但是安全性高,UDP不需要,就跟电报一样,不管你收没收到,所以效率高,但是不可靠,例如我们网络里的DNS请求,就是用UDP发送的,还有QQ里用UDP直连方式语音,速度也是最快的
     
    用户数据报协议(UDP)是IP的另一个主机到主机的协议(对应OSI参考模型的传输层)。 UDP部提供TCP的支持的任何先进功能。没有计时器,不提供流控制和管理机制、应答、紧急数据的加速传输,或者其它的任何功能。并且UDP不支持重传。 UDP和TCP是迥然不同的协议,它们被设计为做不同的事情。TCP提供更高的可靠性,而UDP是一个简单的、尽力发送报文的协议。TCP相对更复杂,需要大量的功能开销,而UDP则是简单高效的。 UDP通常被认为是不可靠的,因为它不具有TCP的任何可靠性机制。没有接收应答机制、乱序到达数据顺序化,甚至不具备对损坏的数据进行重传的机制。UDP不能保证数据不受损害地到达目的地,因此UDP适合发送小规模的数据,对于数据分成多个保温且需要对数据刘进行调解的,TCP更合适。 UDP报头UDP报头包含了16位源端口号,16位目的端口号,16位UDP长度和16位校验和,最后是UDP的数据段(如果有的话)。 UDP的端口号和TCP的端口号是分别独立存在。 UDP长度字段是指UDP首部和UDP数据的字节长度。该字段的最小值为8(2个32bit长)。 UDP校验和UDP校验和覆盖了UDP首部和UDP数据。另,UDP的校验和是可选的。

  • 相关阅读:
    Java 面向对象(二)封装
    Java 面向对象(一)面向对象思想
    Java 字符串(二)字符串常用操作
    Java 字符串(一)字符串初始化
    JavaScript 流程控制(二)循环结构
    【剑指Offer-知识迁移能力】面试题58:翻转单词顺序
    【剑指Offer-知识迁移能力】面试题57.2:和为s的连续整数序列
    【剑指Offer-知识迁移能力】面试题57:合为s的两个数字
    【剑指Offer-知识迁移能力】面试题56:数组中只出现一次的两个数字
    【剑指Offer-知识迁移能力】面试题55.2:平衡二叉树
  • 原文地址:https://www.cnblogs.com/pulan/p/2921659.html
Copyright © 2011-2022 走看看