UDP通信——使用python实现简单的UDP通信
UDP 的英文单词是User Datagram Protocol,缩写为UDP,是一种用户数据报协议,又称为用户数据报文协议,是一种报文的协议,是一个简单的面向数据报的传输层协议。UDP的发起和接受是不需要经过连接的,仅仅只需要发送在对应端口上进行监听接受即可,不需要两个客户端一定是连接的。
这里大家要区别的是:另一种常用的通信协议是TCP协议,两者的区别是TCP是面向连接的、传输可靠的,UDP是面向数据报的、不可靠的。它一旦把数据发送出去,就不保留备份数据,发出去的数据有没有被收到也不进行校验,容易丢包。
虽然用UDP传输数据不可靠,但它的优点是和TCP比,速度快,对于不要求可靠到达的数据,就可以使用UDP协议。下面是接收和发送端的程序代码:
接收端 server.py
# -*- coding: utf-8 -*-
import socket #导入socket模块
import time #导入time模块
#server 接收端
# 设置服务器默认端口号
PORT = 8000
# 创建一个套接字socket对象,用于进行通讯
# socket.AF_INET 指明使用INET地址集,进行网间通讯
# socket.SOCK_DGRAM 指明使用数据协议,即使用传输层的udp协议
server_socket = socket.socket(socket.AF_INET, socket.SOCK_DGRAM)
address = ("192.168.43.131", PORT)
server_socket.bind(addr