可靠UDP实现的python代码
时间: 2024-10-28 07:15:52 浏览: 23
UDP (User Datagram Protocol) 是一种无连接的网络通信协议,它并不保证数据包的有序到达或完整性,但是由于其简单快速的特点,常用于实时应用程序,如在线游戏、视频流等。在Python中,你可以使用内置的socket模块来创建一个UDP套接字实现点对点的数据交换。以下是一个简单的UDP客户端和服务器示例:
```python
# UDP服务器代码
import socket
def udp_server():
host = '0.0.0.0' # 任意地址
port = 9999 # 预设端口
server_socket = socket.socket(socket.AF_INET, socket.SOCK_DGRAM)
server_socket.bind((host, port))
print(f"Server started on {host}:{port}")
while True:
data, addr = server_socket.recvfrom(1024) # 接收数据
print(f"Received: {data.decode()} from {addr}")
response = "Hello, client!" # 回应消息
server_socket.sendto(response.encode(), addr)
# UDP客户端代码
def udp_client(server_host, server_port):
client_socket = socket.socket(socket.AF_INET, socket.SOCK_DGRAM)
message = input("请输入你要发送的消息:") # 输入数据
client_socket.sendto(message.encode(), (server_host, server_port))
received_data, server_addr = client_socket.recvfrom(1024) # 接收回复
print(f"Received: {received_data.decode()} from {server_addr}")
# 要启动服务器,调用udp_server()函数;要连接到服务器,调用udp_client()
```
这个例子中,服务器等待来自客户端的消息并返回响应,而客户端向服务器发送数据并打印接收的结果。
阅读全文