Python启动UDP服务,监听并接收客户端数据

news2024/11/16 1:35:14

可以使用Python的socket库实现UDP协议的验证,以下是一个简单的示例代码:

服务器:

[root@localhost python]# cat udp_server.py 
import socket

# 创建一个UDP socket
udp_socket = socket.socket(socket.AF_INET, socket.SOCK_DGRAM)

# 绑定到本地 IP 和端口
local_addr = ('192.168.6.211', 8888)
udp_socket.bind(local_addr)

print('UDP server is listening...')

while True:
    # 接收数据
    data, addr = udp_socket.recvfrom(1024)
    print(f'Received data from {addr}: {data.decode()}')

    # 回复数据
    reply = 'Received: ' + data.decode()
    udp_socket.sendto(reply.encode(), addr)

[root@localhost python]#

客户端

[root@localhost python]# cat udp_server.py 
import socket

# 创建一个UDP socket
udp_socket = socket.socket(socket.AF_INET, socket.SOCK_DGRAM)

# 发送数据
remote_addr = ('192.168.6.211', 8888)
udp_socket.sendto('Hello, UDP!'.encode(), remote_addr)

# 接收数据
data, addr = udp_socket.recvfrom(1024)
print(f'Received data from {addr}: {data.decode()}')

# 关闭 socket
udp_socket.close()

[root@localhost python]#

以上代码创建了一个UDP socket,并绑定到本地的IP和端口8888。接着使用recvfrom()方法接收数据,并使用sendto()方法发送数据。最后,关闭socket。

可以使用两个终端分别运行该程序,并观察数据的传输情况,从而验证UDP协议的可靠性。

 

 

 

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/739370.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

springboot超市进销存系统

本次设计任务是要设计一个超市进销存系统,通过这个系统能够满足超市进销存系统的管理及员工的超市进销存管理功能。系统的主要功能包括:首页、个人中心、员工管理、客户管理、供应商管理、承运商管理、仓库信息管理、商品类别管理、 商品信息管理、采购信…

Linux离线安装docker

问题: service docker start /status 都会报如下错误 报错:docker:unrecognized service 使用docker -v也能正常显示docker版本但唯独就是不能启动成功 找了很多资料都没有一个详细的答案和步骤 试了很多方法今天终于解决, 对此进行做个…

前端Vue自定义精美商品分类列表组件 侧边栏商品分类组件 category组件 左边分类category 右边列表List

随着技术的发展,开发的复杂度也越来越高,传统开发方式将一个系统做成了整块应用,经常出现的情况就是一个小小的改动或者一个小功能的增加可能会引起整体逻辑的修改,造成牵一发而动全身。 通过组件化开发,可以有效实现…

TortoiseGit 入门指南03:提交

你现在应该已经有了一个仓库,在工作过程中会对项目做一些修改,比如添加代码、修复错误等等,你将不定时的将这些更改 提交(commit)到代码仓库。 术语 提交 是将 暂存区 内容放入 版本库 。这个过程涉及到 Git 的一些基…

Jina AI 受邀出席 WAIC 2023「科技无障碍」论坛,与行业专家共话 AI 普惠未来

7 月 6 日,2023 世界人工智能大会(WAIC)在上海世博中心及世博展览馆开幕,并在浦东张江、徐汇西岸设分会场,同步在闵行等产业集聚区开展同期活动。本届大会由上海市人民政府和国家发改委、工信部、科技部、国家网信办、…

qiankun 与vue-router 不兼容导致路由显示 undefined 问题

在路由前置守卫中监听 to 及 from 的变化,发现 router.push 跳转路由时,会发现打印出 两次以上的 to、form 对象,只有第一次打印的from对象是正确的,而后两次都是由于 qiankun 与vue-router 不兼容引起的路由守卫重复执行的问题导…

CSS word-break 详解

word-break:normal 使用浏览器默认的换行规则 <!DOCTYPE html> <html> <head> <style> p.test1 { width:11em; border:1px solid #000000; word-break:normal; } </style> </head> <body> <p class"test1">This …

构建WebRTC技术需要的后端服务

&#x1f4e2;欢迎点赞 &#xff1a;&#x1f44d; 收藏 ⭐留言 &#x1f4dd; 如有错误敬请指正&#xff0c;赐人玫瑰&#xff0c;手留余香&#xff01;&#x1f4e2;本文作者&#xff1a;由webmote 原创&#x1f4e2;作者格言&#xff1a;新的征程&#xff0c;我们面对的不是…

【C语言】三子棋----详解

目录 前言 一、游戏规则 二、创建文件 1.test.c文件 &#x1f604;菜单函数的实现 &#x1f604;main函数的实现 &#x1f604;game游戏函数的实现 2.game.c文件 &#x1f604;书写初始化棋盘的函数&#xff1a; &#x1f604;书写打印棋盘的函数 &#x1f604;书写玩家…

iSCSI磁盘配置

iSCSI磁盘简要描述 iSCSI&#xff08;Internet Small Computer System Interface&#xff09;&#xff0c;Internet小型计算机系统接口&#xff0c;又称为IP-SAN&#xff0c;是一种基于因特网及SCSI-3协议下的存储技术。 iSCSI 可以与任意类型的 SCSI 设备进行通信。对于一个…

【阿里巴巴1688API接口开发系列】数据采集获取,封装接口可加高并发,大数据中心项目

首先以1688商品数据为例 item_get-获得1688商品详情 公共参数 名称类型必须描述keyString是调用key&#xff08;必须以GET方式拼接在URL中&#xff09;注册Key和secret接入secretString是调用密钥api_nameString是API接口名称&#xff08;包括在请求地址中&#xff09;[item_…

Kafka request.log中RequestQueueTimeMs、LocalTimeMs、RemoteTimeMs、ThrottleTimeMs、含义

Kafka request.log中RequestQueueTimeMs、LocalTimeMs、RemoteTimeMs、ThrottleTimeMs、含义 要理解各个延时项的含义&#xff0c;必须从Kafka收到TCP请求、处理请求到返回TCP包整个流程开始梳理 RequestQueueTimeMs Processor 执行processNewResponses() 方法&#xff0c;不…

DPWWN1靶场详解

DPWWN1靶场详解 首先还是nmap -sP 192.168.102.0/24扫描到ip地址&#xff0c;然后对这个ip进行一个单独的扫描&#xff0c;发现这个靶场有一个mysql数据库&#xff0c;猜测可能会用到sql注入&#xff0c;但是没用到。 ip登陆到网页发现并没有什么可利用的 唯一的切入点也就数…

【Docker】Docker之镜像上传(阿里云镜像仓库)

注册阿里云镜像仓库 登录阿里云 登录成功后&#xff0c;搜索docker镜像 点击立即开通 创建个人实例 创建镜像仓库 点击下一步之后&#xff0c;可以选择代码源&#xff0c;本文选择的是本地仓库 镜像仓库创建成功&#xff0c;根据对应操作命令实现想要的功能&#xff0c;如上传镜…

Java 动态规划 剑指 Offer 47. 礼物的最大价值

代码展示&#xff1a; class Solution {public int maxValue(int[][] grid) {int mgrid.length;int ngrid[0].length;//创建dp数组int[][]dpnew int[m1][n1];//填充数组for(int i1;i<m;i){for(int j1;j<n;j){dp[i][j]Math.max(dp[i-1][j],dp[i][j-1])grid[i-1][j-1];}}r…

LLM模型微调方法总结

文章目录 Freeze方法P-tuning方法prefix-tuningPrompt TuningP-tuning v1P-tuning v2 Lora方法Qlora方法 在现在这大规模语言模型&#xff08;LLM&#xff09;盛行的时代&#xff0c;由于模型参数和显卡配置的因素&#xff0c;预训练基本是大公司或者高校可以完成的事情&#x…

SpringBoot+Prometheus+Grafana 监控面板(项目配置方式【入侵】)

SpringBootPrometheusGrafana 监控面板 提示&#xff1a;本文使用SpringBoot 简单样例&#xff0c;介绍基础配置和使用方法 包含内容&#xff1a;Docker、SpringBoot、Maven、 Prometheus、Grafana等 提示&#xff1a;本文包含官网内容介绍&#xff0c;具体更项目的学习&#x…

怎么学习Web框架和库相关知识?

学习Web框架和库相关知识可以帮助你构建高效、可扩展和安全的Web应用程序。以下是一些学习Web框架和库的方法和步骤&#xff1a; 确定学习目标&#xff1a; 明确你想学习的Web框架或库&#xff0c;例如常用的PHP框架&#xff08;如Laravel、Symfony&#xff09;或JavaScript库…

香橙派4和树莓派4B构建K8S集群实践之八: TiDB

目录 1. 说明 2. 准备工作 3. 安装 3.1 参考TiDB官方 v1.5安装说明 3.2 准备存储类 3.3 创建crd 3.4 执行operator 3.5 创建cluster/dashboard/monitor容器组 3.6 装好后的容器状况 3.7 设置访问入口(Ingress & Port) 4. 遇到的问题 5. 参考 1. 说明 建立TiDB…

Mongo可视化工具studio 3t无限试用

文章目录 前言一、下载二、使用步骤1.下载后,无脑下一步安装好2.开始无限试用 总结 前言 mongodb可以说是比较流行的nosql数据库了,它灵活多变的存储,为项目中后续可能的变更提供了极大的便利性,工欲善其事必先利其器,今天推荐一款mongo的可视化工具: studio 3t 一、下载 各版…