rust实现UDP服务器

use std::net::UdpSocket;

use std::io::{self, Read, Write};

fn main() -> io::Result<()> {

// 创建UDP套接字

let socket = UdpSocket::bind("127.0.0.1:8080")?;

// 初始化缓冲区

let mut buffer = 0; 1024;

loop {

// 等待数据包

let (number_of_bytes, sender_address) = socket.recv_from(&mut buffer)?;

// 解析数据包

let data = &buffer..number_of_bytes;

// 处理数据(这里简单地将接收到的数据发送回客户端)

let response = b"Hello, UDP client!";

socket.send_to(&response, &sender_address)?;

// 打印接收到的数据

println!("Received message: {}", String::from_utf8_lossy(data));

}

}

相关推荐
Chenyu_3107 小时前
DPDK、TC 和 XDP:Linux 高性能网络到底在优化什么
linux·服务器·网络·缓存
遇码8 小时前
流式调用中途断连别直接报错:瞬态故障识别、退避重试与中文根因诊断的搭建方法
大数据·人工智能·ai·rust·数据分析·大模型·agent
DongQiShanRen8 小时前
六根硬件映射(四):归属澄清、两处不一致与卷十一总表
开发语言·人工智能·算法·rust·哈希算法·集成学习
乔旭伟9 小时前
Linux 服务器备份实战:一致性快照、日志归档与恢复演练
linux·运维·服务器
乔旭伟9 小时前
Linux 服务器安全加固实战:SSH、防火墙、补丁与入侵排查
linux·服务器·安全
裕晟资质规划10 小时前
三类涉密资质延续时限差异分析:军工60日与集成印制3个月的边界
java·服务器·前端·网络·安全
刘胡子大叔10 小时前
备份包只有 1.5K?
linux·服务器·网络
无足鸟ICT10 小时前
【RHCA+】RPM包验证和数字证书
linux·运维·服务器
小范的技术工坊11 小时前
Linux应用开发(文件属性)
linux·运维·服务器
幻智星科技11 小时前
一个开源的纯FPGA网口采集卡
网络协议·fpga开发·udp