时间:2021-05-19
一个简单好理解的例子,复制过去就能用,能看到效果
首先对功能的思考,他怎么去实现
1.制定udp广播的端口(如果收发用同一个端口就会一直接收到自己给自己广播的消息)
2.启动后向局域网广播约定的字符串(字符串包含了广播端的IP和用来接收响应的端口号)
3.设备需要内置一个功能,打开约定的接收广播端口,持续做好对udp服务端的响应工作,接收广播字符串后解析,向广播端发送自己的IP和自己设备的型号信息(送至:解析到的IP,端口号)
4.广播端接收这个设备发送的字符串,解析生成模型,放进动态的list,方便实时监控
5.循环去广播来进行设备的监测,设备下线后从list移除,就是已经不响应udp服务器的广播了,考虑到udp传输的丢包问题,设备连续5次没有响应,判断为下线
我们需要做两件事,一是广播喊话让局域网内所有听到的设备都要有回应,二是收集他们的回应,所以需要两个程序
一个是喊话的UdpBroadCast,一个是收集的UdpClient
用网络调试助手模拟下位机的设备
收到广播 然后发送自己的信息
接收端收到后判断格式是不是正确,正确在进行下一步处理
创建更多的终端
收到,下位机只需要按规定发送自己的名字就好了,我们是可以拿到发送过来的IP和端口号的
然后把这些存入模型,就得到了一个设备列表模型
约定一个时间去更新模型的设备,然后写入json文件
外部读文件就好了,因为发送端和接收端是一直在运行的
把列表里的设备信息定时存到文件是和外界做一个交互
以上就是C# 基于udp广播收集局域网类所有设备信息的详细内容,更多关于c# 收集设备信息的资料请关注其它相关文章!
声明:本页内容来源网络,仅供用户参考;我单位不保证亦不表示资料全面及准确无误,也不保证亦不表示这些资料为最新信息,如因任何原因,本网内容或者用户因倚赖本网内容造成任何损失或损害,我单位将不会负任何法律责任。如涉及版权问题,请提交至online#300.cn邮箱联系删除。
本文实例讲述了Android编程实现基于局域网udp广播自动建立socket连接的方法。分享给大家供大家参考,具体如下:android开发中经常会用到socke
DHCP(DynamicHostConfigurationProtocol,动态主机管理协议)是一种基于UDP协议且仅限用于局域网的网络协议,主要用途是为局域网
路由器无线广播建议不要开,无线广播即是调频广播,调频广播是一种以无线发射的方式来传输广播的设备。 路由器(Router)是连接因特网中各局域网、广域网的设备,
iptraf是一个基于ncurses开发的IP局域网监控工具,它可以实时地监视网卡流量,可以生成各种网络统计数据,包括TCP信息、UDP统计、ICMP和OSPF
以太网是广播域的上网方式,一个节点发出一个广播信息,集线器会将这个广播传播给所有同它相连的节点。 以太网(Ethernet)是一种计算机局域网技术。IEEE组