首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >自定义服务发现

自定义服务发现
EN

Stack Overflow用户
提问于 2017-05-15 10:08:12
回答 1查看 165关注 0票数 0

我正在尝试为我的通信框架编写一个服务发现协议。我计划采取以下步骤:

服务器端

  1. 创建多播套接字
  2. 加入一个团体
  3. 广播(发送一些心跳UDP多播协议的多播消息.)广播数据包含服务器IP和一些端口,用于处理客户端注册请求。
  4. 打开线程,从端口上的客户端接收TCP数据包,以接受注册。

客户端

  1. 创建多播套接字
  2. 加入与服务器相同的多播组以接收消息
  3. 检查服务中的相关广播
  4. 从广播包获取数据(数据是服务器IP和端口)
  5. 以注册请求的形式对服务器(IP和接收的端口)进行TCP调用。

关于安全漏洞,我可以在客户端注册步骤中提供证书以保护此漏洞,但我的主要关注的是服务广播

如果我在心跳中广播服务器IP和端口,这对端口泛滥等攻击是非常危险的(我可以提供一些安全措施,但是重的加解密会使服务发现滞后)。有没有其他的设计方案?

EN

回答 1

Stack Overflow用户

发布于 2017-05-15 10:44:17

如果我在心跳中广播服务器IP和端口,这对端口泛滥等攻击是非常危险的(我可以提供一些安全措施,但是重的加解密会使服务发现滞后)。有没有其他的设计方案?

另一种设计是从客户端发送一个广播来发现服务器。就像DHCP和其他服务的工作一样:客户端广播“发现”消息,因此每个服务器都可以使用服务“提供”进行响应。请查找以下更多信息:

Protocol

关于你提到的“发现滞后”。让客户端发送第一个“发现”包应该可以将延迟降到最小,因此这是“反转”您的模型的另一个优点。

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/43976727

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档