1.UDP协议简介
UDP协议是一种无连接的传输层协议,而前面所述的TCP协议是一种面向连接的协议,即UDP协议在处理过程中不需要建立建立连接,省去了繁琐的握手过程,UDP协议不像TCP协议那样,他并不关心接收方是否接收到它所发送的数据,另外,UDP协议的包头格式要比TCP协议的包头格式简单得多,所以说UDP协议的处理速度比TCP协议要快,更多关于UDP协议内部的细节在这里就不再加赘述,各位有兴趣的可以自行查阅相关手册。同样,Python的UDP网络编程方式和TCP大同小异,Python提供了sendto(ipaddr,port)和(data,address)=recvfrom()两个函数进行UDP数据的发送和接收,具体的处理步骤可以概括为:
- 创建套接字
- 指定目的地址和需要发送的数据
- 发送或接收数据
- 数据收发完毕后关闭套接字
2.UDP协议的Python编程
根据节1所述的UDP协议编程处理步骤,我们进行了Python编程,代码很简单,根据这个原理,我们后面在进行AI加速器的设计时,Python与ZYNQ-7000中的ARM进行信息交互的协议就是UDP协议,这一次对UDP协议的介绍和编程为后续进行AI加速器的设计打下基础。Python代码如下:
# -*- coding: utf-8 -*-
#Python实现UDP简单编程
import socket
#指定目的地址
address=('10.11.215.98',8080)
#创建套接字
s = socket.socket(socket.