zoukankan      html  css  js  c++  java
  • python 中的UDP和TCP(1)

    一、TCP:

      TCP是Transmission Control Protocol的简称,中文名传输控制协议。是一种面向连接的、可靠的、基于字节流的传输层通信协议。TCP通信需要经过创建连接、数据传输、终止连接三个步骤。通信开始前,一定要先建立相关的链接,才能发送数据。完成数据交换后,双方必须断开链接释放系统资源。

      TCP优点:

        1、TCP采用发送应答机制

          TCP发送的每个报文段都必须得到接收方的应答才认为这个TCP报文段传输成功

        2、超时重传

          发送端发送一个报文段后就启动定时器,如果在定时时间内没有收到应答就重新发送这个报文段。TCP为了保证不发生丢包,就给每个包一个序号,同时序号也保证了

        接收端实体包的按序接收。然后接收端实体对已成功收到的包发回确认;发送端实体在合理返回时延内未收到确认,那么对于的数据包就会被假设丢失,将会被进行重传。

        3、错误校验

          TCP用一个校验和函数来检验数据是否有错误;在发送和接收时都要计算校验和

        4、流量控制和阻塞管理

          流量控制用来避免主机发送得过快而使接收方来不及完全收下

    二、UDP

       UDP是User Datagram Protocol的简称,中文名是用户数据报协议,是一种简单的面向数据表的运输层协议,在网络中用于处理数据报,是一种无连接的协议。UDP不提供可靠连接,只负责把应用程序传给IP层的数据报发送出去,并不能保证它们能达到目的地。由于UDP传输数据报前不用在用户和服务器之间搭建一个连接,且没有重发机制,故而传输速度快。

    三、TCP和UDP区别

      1、基于连接与无连接

      2、TCP要求系统资源较多,UDP比较少

      3、UDP程序结构较简单

      4、TCP:流模式;UDP:数据报模式

      5、TCP保证数据正确性,UDP可能丢包

      6、TCP保证数据顺序,UDP不保证

      7、TCP首部开销20字节,UDP只有8个字节

      8、每一条TCP连接只能是点对点的;UDP支持一对一,一对多,多对一和多对多

    下一章写pythonTCP、UDP代码实现  

  • 相关阅读:
    [zjoi2012]灾难——拓扑排序+灭绝树
    [bzoj3590]Quare——状压DP
    [bzoj4144]Petrol——最小生成树+最短路
    [bzoj2407]探险——重构图+最短路
    [bzoj2725]故乡的梦——最短路+线段树
    [bzoj2118]墨墨的等式——同余最短路
    [loj2736][JOISC 2016 Day3]回转寿司——分块+堆
    PHP学习笔记二十四【Get Set】
    PHP学习笔记二十三【This】
    PHP学习笔记二十二【静态方法二】
  • 原文地址:https://www.cnblogs.com/MoonlightMaleGod/p/9562623.html
Copyright © 2011-2022 走看看