欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

python 中的UDP和TCP(1)

程序员文章站 2023-04-03 10:48:00
一、TCP: TCP是Transmission Control Protocol的简称,中文名传输控制协议。是一种面向连接的、可靠的、基于字节流的传输层通信协议。TCP通信需要经过创建连接、数据传输、终止连接三个步骤。通信开始前,一定要先建立相关的链接,才能发送数据。完成数据交换后,双方必须断开链接 ......

一、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代码实现