LoRaWAN网关的断开事件是如何触发的?

0

【以下的问题经过翻译处理】 你好!

根据文档,IoT Core支持发布消息,以通知你有关LoRaWAN网关连接状态事件的信息。

我的问题是:触发“断开连接”事件的标准是什么? IoT Core是否会定期ping网关,或者根据最后接收到通过网关发送数据的任何IoT设备的上行消息来设置超时?

感谢您提前的回复。

profile picture
专家
已提问 5 个月前15 查看次数
1 回答
0

【以下的回答经过翻译处理】 你好。Basic Station LNS协议使用WebSocket作为传输协议:https://lora-developers.semtech.com/build/software/lora-basics/lora-basics-for-gateways/?url=tcproto.html

WebSocket是一种面向连接的协议。为了优雅地关闭连接,有一个关闭握手过程:https://datatracker.ietf.org/doc/html/rfc6455#section-1-4。你可以在这里看到Basic Station的实现:https://github.com/lorabasics/basicstation/blob/ba4f85d80a438a5c2b659e568cd2d0f0de08e5a7/src/net.c#L639。如果Basic Station关闭,它将发送这个握手过程,导致AWS IoT Core for LoRaWAN立即检测到断开连接。

对于更突然的断电等不太优雅的情况,WebSocket有ping-pong机制:https://datatracker.ietf.org/doc/html/rfc6455#section-5-5-2。在这里,如果Basic Station从LNS接收到ping,它将发送pong:https://github.com/lorabasics/basicstation/blob/ba4f85d80a438a5c2b659e568cd2d0f0de08e5a7/src/net.c#L577-L592

如果我切断网关的电源,需要约2分钟才能检测到断开连接。

profile picture
专家
已回答 5 个月前

您未登录。 登录 发布回答。

一个好的回答可以清楚地解答问题和提供建设性反馈,并能促进提问者的职业发展。

回答问题的准则