了解CoAP代理

问题描述 投票:0回答:1

根据CoAP规范RFC7252第5.7节,存在两种类型的CoAP代理,即正向代理和反向代理。与该定义正交的代理可以是CoAP-CoAP或HTTP-CoAP代理。

根据这些定义,我有以下问题:

  1. 在什么情况下必须使用这些代理类型(正向代理,反向代理,CoAP-CoAP和HTTP-CoAP)?
  2. 在这些用例中,代理到底是什么?
  3. 每个代理服务器需要CoAP消息的哪一部分才能完成其任务? (我认为代理会查看某些CoAP选项吗?)
  4. 在哪里运行代理?在登机路由器上吗?

如果有人可以提供除了上述问题的答案之外,还提供很好的敬意和示例,那就太好了。

proxy reverse-proxy coap
1个回答
0
投票
  1. 代理时间的一些用例是:

    • 转发代理:逃避限制性防火墙(例如,因为传出连接除非经过代理才被阻止,否则会被阻止);一种特殊情况是,当将CoAP-over-WebSocket服务器用作转发代理时,从浏览器中访问CoAP上的资源。
    • 反向代理:与反向代理大致相同,但方向相反(即,如果服务器位于防火墙网络中,则防火墙上可以运行反向代理,以选择性地允许请求进入)。此外,反向代理可用于不受限制的服务器端进行负载平衡。
    • HTTP-CoAP代理:从没有良好CoAP支持的编程环境访问CoAP设备(例如,如果您的监视系统支持轮询HTTP服务器,则H-C代理可以轻松地监视您的CoAP服务器)。
    • CoAP-HTTP代理:使大型网络上的服务可用于受限设备(例如,查询天气预报)。这通常用途有限,因为那些Web服务不使用适合受限设备的数据格式。
  2. 在不同情况下几乎没有什么不同;除了显而易见的(跨代理来回转换CoAP和HTTP消息)之外,正向和反向代理的区别仅在于,它们是否对具有Proxy- *选项(通常为Proxy-Scheme)集(正向代理)的消息做出反应。那些没有(反向代理)的人。

  3. 所有代理都需要检查完整的消息(即所有标头字段并查看所有选项)。大多数头字段(令牌,消息ID,某种程度上的mtype)和几个选项(例如,观察)都是逐跳的,即。服务器对它们进行操作并为转发的请求创建新值。如果消息中有任何内容,代理将需要理解但不是(即未知的代理不安全选项),它将拒绝转发。

  4. 这完全取决于应用程序,但是在大多数常见示例中,这将是某种边界路由器;可能是6LoWPAN方案中的6LBR,或者是较大设置的防火墙。如果在CoAP-over-WebSocket终结点与其余CoAP世界之间进行路由,则CoAP-over-WebSocket服务器通常在同一台计算机上运行,​​该计算机还为使用该套接字的Web应用程序提供服务。

© www.soinside.com 2019 - 2024. All rights reserved.