我的任务是创建一个网络发现应用程序,该应用程序将其存在广播给其他应用程序并监听同一网络上广播的其他应用程序。
我正在通过使用 UDP 套接字来解决这个问题。但是我遇到的问题是在为服务器创建 sockaddr_in 数据结构时,我不知道要使用哪个端口号,即我不知道哪个端口号最适合设置为变量 sin_port。
非常感谢对我的问题的任何帮助,如果我的问题不够清楚,请在评论中说出来,以便我更清楚
最佳答案
是否只是作为灵感来源,您可能想看看 SSDP(简单服务发现协议(protocol)) - 它基于 UDP,端口 1900,广播 + 单播,并且正是为了解决您的问题:
http://en.wikipedia.org/wiki/Simple_Service_Discovery_Protocol
http://upnp.org/sdcps-and-certification/standards/device-architecture-documents/
(第 1 节,“发现”,长达 20 页,涵盖 SSDP)
关于sockets - 网络发现应用程序使用哪个端口,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33881256/