您可以捐助,支持我们的公益事业。

1元 10元 50元





认证码:  验证码,看不清楚?请点击刷新验证码 必填



  求知 文章 文库 Lib 视频 iPerson 课程 认证 咨询 工具 讲座 Model Center   Code  
会员   
   
 
     
   
 订阅
  捐助
C# 实现udp广播收集局域网类所有设备信息
 
 
  2170  次浏览      17
 2020-12-16  
 
编辑推荐:

本文首先对功能的思考,然后怎么去是实现。
本文来自于csdn,由火龙果Anna编辑推荐。

一个简单好理解的例子,复制过去就能用,能看到效果

首先对功能的思考,他怎么去实现

1.制定udp广播的端口(如果收发用同一个端口就会一直接收到自己给自己广播的消息)

2.启动后向局域网广播约定的字符串(字符串包含了广播端的IP和用来接收响应的端口号)

3.设备需要内置一个功能,打开约定的接收广播端口,持续做好对udp服务端的响应工作,接收广播字符串后解析,向广播端发送自己的IP和自己设备的型号信息(送至:解析到的IP,端口号)

4.广播端接收这个设备发送的字符串,解析生成模型,放进动态的list,方便实时监控

5.循环去广播来进行设备的监测,设备下线后从list移除,就是已经不响应udp服务器的广播了,考虑到udp传输的丢包问题,设备连续5次没有响应,判断为下线

我们需要做两件事,一是广播喊话让局域网内所有听到的设备都要有回应,二是收集他们的回应,所以需要两个程序

一个是喊话的UdpBroadCast,一个是收集的UdpClient

用网络调试助手模拟下位机的设备

收到广播 然后发送自己的信息

接收端收到后判断格式是不是正确,正确在进行下一步处理

创建更多的终端

收到,下位机只需要按规定发送自己的名字就好了,我们是可以拿到发送过来的IP和端口号的

然后把这些存入模型,就得到了一个设备列表模型

约定一个时间去更新模型的设备,然后写入json文件

外部读文件就好了,因为发送端和接收端是一直在运行的

把列表里的设备信息定时存到文件是和外界做一个交互

   
2170 次浏览       17
 
相关文章

深度解析:清理烂代码
如何编写出拥抱变化的代码
重构-使代码更简洁优美
团队项目开发"编码规范"系列文章
 
相关文档

重构-改善既有代码的设计
软件重构v2
代码整洁之道
高质量编程规范
 
相关课程

基于HTML5客户端、Web端的应用开发
HTML 5+CSS 开发
嵌入式C高质量编程
C++高级编程
最新课程计划
信息架构建模(基于UML+EA)3-21[北京]
软件架构设计师 3-21[北京]
图数据库与知识图谱 3-25[北京]
业务架构设计 4-11[北京]
SysML和EA系统设计与建模 4-22[北京]
DoDAF规范、模型与实例 5-23[北京]
 
最新文章
.NET Core 3.0 正式公布:新特性详细解读
.NET Core部署中你不了解的框架依赖与独立部署
C# event线程安全
简析 .NET Core 构成体系
C#技术漫谈之垃圾回收机制(GC)
最新课程
.Net应用开发
C#高级开发技术
.NET 架构设计与调试优化
ASP.NET Core Web 开发
ASP.Net MVC框架原理与应用开发
更多...   
成功案例
航天科工集团子公司 DotNet企业级应用设计与开发
日照港集 .NET Framewor
神华信 .NET单元测试
台达电子 .NET程序设计与开发
神华信息 .NET单元测试
更多...