zoukankan      html  css  js  c++  java
  • TCP与UDP区别小结

    1. TCP(Transmission Control Protocol):传输控制协议
    2. UDP(User Datagram Protocol):用户数据报协议
     
        主要从连接性(Connectivity)、可靠性(Reliability)、有序性(Ordering)、有界性(Boundary)、拥塞控制(Congestion or Flow control)、传输速度(Speed)、量级(Heavy/Light weight)、头部大小(Header size)等8个方面来讲:
     
    1. TCP是面向连接(Connection oriented)的协议,UDP是无连接(Connection less)协议;
        TCP用三次握手建立连接:1) Client向server发送SYN;2) Server接收到SYN,回复Client一个SYN-ACK;3) Client接收到SYN_ACK,回复Server一个ACK。到此,连接建成。UDP发送数据前不需要建立连接。
     
    2. TCP可靠,UDP不可靠;
        TCP丢包会自动重传,UDP不会。
     
    3. TCP有序,UDP无序;
        消息在传输过程中可能会乱序,后发送的消息可能会先到达,TCP会对其进行重排序,UDP不会。
     
    4. TCP无界,UDP有界;
        TCP通过字节流传输,UDP中每一个包都是单独的。
     
    5. TCP有流量控制(拥塞控制),UDP没有;
        主要靠三次握手实现。以及慢开始、拥塞避免、快重传、快恢复
     
    6. TCP传输慢,UDP传输快;
        因为TCP需要建立连接、保证可靠性和有序性,所以比较耗时。这就是为什么视频流、广播电视、在线多媒体游戏等选择使用UDP。
     
    7. TCP是重量级的,UDP是轻量级的;
        TCP要建立连接、保证可靠性和有序性,就会传输更多的信息,如TCP的包头比较大。
     
    8. TCP需要更多资源,UDP则要好上很多
     
    9. 应用场合不同:TCP一般应用在对可靠性要求比较高的场合,例如http,ftp等等。而UDP一般应用在对实时性要求较高场合,例如视频直播,大文件传输等等
     
    小结:
    TCP是面向连接的、可靠的、有序的、速度慢的协议;UDP是无连接的、不可靠的、无序的、速度快的协议。
    TCP开销比UDP大,TCP头部需要20字节,UDP头部只要8个字节。
    TCP无界有拥塞控制,TCP有界无拥塞控制。
     
     
    仅供学习参考,侵权删,原文链接:https://www.cnblogs.com/-wang-cheng/p/5421988.html
  • 相关阅读:
    STL源代码剖析(二)
    局域网部署docker--从无到有创建自己的docker私有仓库
    Leetcode Add two numbers
    GDIPlus绘制桌面歌词
    Android中apk动态载入技术研究(2)android插件化及实现
    jq 地区(省市县区)联动菜单
    System.Diagnostics.Process.Start的妙用
    aaaa
    RESTful Web 服务:教程
    芒果TV 视频真实的地址获取
  • 原文地址:https://www.cnblogs.com/zhangym118/p/8660274.html
Copyright © 2011-2022 走看看