教育培训网站制作,莱芜都市网交友征婚,网站seo报表,wordpress 采集优酷✨创作不易#xff0c;还希望各位大佬支持一下 #x1f44d; 点赞#xff0c;你的认可是我创作的动力#xff01; ⭐️ 收藏#xff0c;你的青睐是我努力的方向#xff01; ✏️ 评论#xff0c;你的意见是我进步的财富#xff01; 任务描述
本关任务#xff1a;在… ✨创作不易还希望各位大佬支持一下 点赞你的认可是我创作的动力 ⭐️ 收藏你的青睐是我努力的方向 ✏️ 评论你的意见是我进步的财富 任务描述
本关任务在 Ping 服务端程序框架中完成接收数据并回传给相应客户端。
相关知识
为了完成本关任务你需要掌握
UDP Ping 服务程序的框架如何接收数据包套接字数据如何发送数据包套接字数据。
服务器程序框架介绍
在这个简单的 UDP Ping 服务器程序中完成套接字创建及绑定后当接收到消息后进行简单处理这里是转化为大写再将消息回传给相应的客户端。
UDP通信中发送与接收数据
在 UDP 通信中使用sendto()函数发送 UDP 数据将数据发送到套接字输入参数 address 是形式为(host, port)的元组指定远程地址其中host表示服务器地址port表示服务器端口号。返回值是发送的字节数。
接收数据使用recvfrom()函数实现。输入参数为接收缓冲区大小。该函数接收 UDP 数据与recv()类似但返回值是(data, address)。其中data是包含接收数据的字符串address是发送数据的套接字地址。
示例如下
接收数据 msg,addrudp_server.recvfrom(BUFSIZE)使用套接字对象udp_server的recvfrom()方法接收数据 发送数据 udp_server.sendto(msg,addr)使用套接字对象udp_server的sendto()方法发送数据 编程要求
根据提示在右侧编辑器中Begin与End之间补充代码完成接收 Ping 客户端发送的消息并转发给相应的客户端。
测试说明
平台会对你编写的代码进行测试客户端发送多个消息并接收服务器的回传消息并打印相应的统计信息。
预期输出 Sequence 1: Reply from 127.0.0.1 RTT 0.000sSequence 2: Request timed outSequence 3: Request timed outSequence 4: Request timed outSequence 5: Request timed outSequence 6: Request timed outSequence 7: Request timed outSequence 8: Request timed outSequence 9: Request timed outSequence 10: Request timed out 源程序示例
from socket import *# 创建UDP套接字
serverSocket socket(AF_INET, SOCK_DGRAM)
# 绑定本机IP地址和端口号
serverSocket.bind((, 12000))########## Begin ##########
# 接收客户端消息
message, address serverSocket.recvfrom(1024)
# 将数据包消息转换为大写
message message.upper()
#将消息传回给客户端
serverSocket.sendto(message, address)
########## End ##########