zoukankan      html  css  js  c++  java
  • TCP和UDP的联系和用途

    一.区别
           二者都是有用的和常用的,如果纯粹从概念上区分二者就比较费解了,我们直接从功能上进行区分,简单明了: 
           这两种传输协议也就是合于适配不同的业务和不同的硬件终端。 
           在使用中,类似于图像、声音等对可靠性要求没有那么高的业务可以用UDP,他们不需要准确存储对准确性无要求但要求速度快。      
           类似于文本、程序、文件等要求可靠的数据最好就用TCP,但会牺牲一些速度。 
           对系统资源的要求:CP较多,UDP少。 
           程序结构:UDP程序结构较简单,TCP复杂。 
           流模式与数据报模式:TCP保证数据正确性,UDP可能丢包; TCP保证数据顺序,UDP不保证
     
    二.用途
           TCP是面向连接的,有比较高的可靠性,一些要求比较高的服务一般使用这个协议,如FTP、Telnet、SMTP、HTTP、POP3等,而 UDP是面向无连接的,使用这个协议的常见服务有DNS、SNMP、QQ等。对于QQ必须另外说明一下,QQ2003以前是只使用UDP协议的,其服务器 使用8000端口,侦听是否有信息传来,客户端使用4000端口,向外发送信息(这也就不难理解在一般的显IP的QQ版本中显示好友的IP地址信息中端口 常为4000或其后续端口的原因了),即QQ程序既接受服务又提供服务,在以后的QQ版本中也支持使用TCP协议了。 
           Udp是一种面向无连接的通信协议,该协议使得数据传输的速度得到大幅度的提高。视频聊天语音聊天基本都是用UPD协议。

    我的总结:
    一、UDP:
                    1
    、将数据源和目的地封装到数据包中,不需要建立连接
                    2
    、每个数据包的大小限制在64k以内
                    3
    、因无连接,是不可靠协议
                    4
    、不需要建立连接,速度快

     

    例子:聊天、对讲机就是UDP的,面向无连接(不管在不在,知不知道,只管发送,求速度),丢数据也不管。速度快。数据被分成包

     

     


    二、TCP:
                    1
    、建立连接,形成传输数据的通道
                    2
    、在连接中进行大量数据的传输
                    3
    、通过三次握手完成连接、是可靠协议
                    4
    、必须建立连接,效率会稍低

    例子:电话通话,必须连接,对方同意才可以发送数据(不然就等待),不能丢失数据。

  • 相关阅读:
    LabVIEW入门第六天(布尔控件及布尔量)
    LabVIEW如何加载显示GIF动画
    C#打开EXCEL或保存文件时报错:System.InvalidOperationException:未在本地计算机上注册” Microsoft.ACE.OLEDB.12.0“提供程序。...
    SQL 怎么设置自定义服务器名称登录
    C#打开EXCEL或保存文件时报错:System.InvalidOperationException:未在本地计算机上注册” Microsoft.ACE.OLEDB.12.0"提供程序。
    半平面交
    poj1038
    poj2318 && poj2398
    poj1696
    poj2430
  • 原文地址:https://www.cnblogs.com/duwenqidu/p/12606663.html
Copyright © 2011-2022 走看看