📅  最后修改于: 2023-12-03 14:56:23.502000             🧑  作者: Mango
用户数据报协议 (UDP, User Datagram Protocol) 是一种简单的无连接的传输层协议,它不保证数据的可靠传输。UDP 通常用于实时通信、流媒体和在线游戏等应用场景,由于传输效率高,因此在一些对数据可靠性要求不高的应用中得到广泛应用。
UDP 常用于实时传输数据的场景,例如:
Python 实现 UDP 客户端和服务器:
import socket
server_address = ('localhost', 5555)
# 创建套接字
sock = socket.socket(socket.AF_INET, socket.SOCK_DGRAM)
# 绑定服务器地址
sock.bind(server_address)
print('UDP 服务器已启动...')
while True:
# 接收消息
data, address = sock.recvfrom(1024)
print(f"接收到来自 {address} 的消息:{data.decode()}")
# 发送消息
message = input('请输入要发送的消息:')
sock.sendto(message.encode(), address)
import socket
server_address = ('localhost', 5555)
# 创建套接字
sock = socket.socket(socket.AF_INET, socket.SOCK_DGRAM)
while True:
# 发送消息
message = input('请输入要发送的消息:')
sock.sendto(message.encode(), server_address)
# 接收消息
data, address = sock.recvfrom(1024)
print(f'接收到来自服务器 {address} 的消息:{data.decode()}')
以上代码实现了一个简单的 UDP 服务器和客户端,可以进行双向通信。需要注意的是,UDP 支持广播和多播,因此可以广播和多播数据报。