当前位置: 首页 > 面试题库 >

Java中使用多播的网络发现

杨晓博
2023-03-14
问题内容

我正在尝试制作客户端/服务器Java应用程序。客户端和服务器都将在同一Wi-Fi网络上运行。服务器将在客户端知道的特定端口上运行。

我正计划通过网络从客户端为该特定端口发送多播消息以发现服务器。但是,我不太确定如何确定网络中的哪个IP收到了我的消息。

发送多播消息后,是否需要在客户端上创建套接字并侦听传入的数据包,以防服务器回复?

提前致谢。


问题答案:

(1)服务器侦听预先安排的端口

DatagramSocket s = new DatagramSocket(8888);
s.receive  //(1)
s.send     //(2)

(3)客户端向广播IP上的端口255.255.255.255发送消息

DatagramSocket c = new DatagramSocket();
c.send(255.255.255.255:8888,msg)     //(3)
c.receive  //(4)

客户端也绑定到端口。我们没有指定它,因此它是为我们随机选择的。

(3)将消息广播到所有本地计算机,(1)的服务器使用客户端IP:port接收消息。

(2)服务器向客户端IP:port发送响应消息

(4)客户端从服务器获取响应消息。



 类似资料:
  • 问题内容: 这是我要尝试的操作-服务器向网络上的所有PC和已启动并正在运行的PC发送“活动消息”,并通过发送其IP来响应呼叫。 我正在看一段轻量级的代码,因为这将构成我的应用程序的一小部分。 我查看了Jini和其他服务,但发现我可能甚至不需要一半的功能(网络发现除外) 是否可以:1.在服务器打开套接字的地方使用for循环,通过发送“活动”消息检查(使用for循环)是否所有IP xxxx均可访问。2

  • 问题内容: 我还没有找到我所遇到问题的确切答案,所以无论如何我都会提出这个问题,如果我确实提出了已经提出的问题,我深表歉意。 我正在为我的Java类做另一个实验作业,对于本周的实验,我必须制造一个UDP服务器以通过网络发送出一个Message对象,然后我必须制造一个UDP客户端以读取该Message。消息本身只是一个具有String消息和String用户名的对象;相当随意。消息是可序列化的。 现在

  • > 这些都是身边同学真实的面试经历,我只是一个整合者哈(已得到同学的同意才发布 ## 一面(技术) 1. 自我介绍 3. 线程池大小如何设置? 4. 介绍项目 6. 系统是以及交付使用了?使用人数? 7. ES如何使用?部署了几个节点? 8. ES脑裂问题了解? 9. ES数据如何来的? 10. 一个视频大概多大? 11. 如何上传的?一次性上传吗? 12. 如何转码? 13. 分片上传大小如何确

  • 总时长51min 只写记得的部分 1.自我介绍 2.介绍项目,为什么要做这个项目 3.python协程 4.python和java的垃圾回收机制 5.项目和之前版本的差别 6.mysql引擎及它们之间的差别 7.记得哪些算法 8.设计模式 9.redis数据结构和分布式锁 10.java创建对象的方式有几种 11.java如何实现多态 12.你说到工厂方法模式,工厂方法模式采用了哪种设计原则 13

  • 上来三个python把我问懵逼 1.自我介绍 2.python dict怎么实现的,魔术方法听过吗 2.python基础的内容都不知道,你用python是做什么的呢 然后一些项目设计专业问题我直接傻眼 4.请你说说你觉得做的好的项目是哪个,介绍一下。为什么要做这个短链接项目呢,你们的设计周期是多长? 3.短链接项目怎么做的,分工是怎么分工的,你工作量是多少,你说说各个模块的工作量占比。 4.软件开

  • 本文向大家介绍IOS 开发之网络图片轮播图的实现,包括了IOS 开发之网络图片轮播图的实现的使用技巧和注意事项,需要的朋友参考一下 IOS 开发之网络图片轮播图的实现 截图 1.使用 2.源码 如有疑问请留言或者到本站社区交流讨论,感谢阅读,希望能帮助到大家,谢谢大家对本站的支持!