主要观点:Golioth 收到特定供应商蜂窝芯片组系列的连接问题报告,展开调查发现意外且不良行为,涉及蜂窝连接的复杂性、封闭生态系统及调试难题。
关键信息:
- 初始报告集中于近期进行 OTA 固件更新的 nRF9160 设备,下载新固件后部分设备会回滚,且问题与新固件版本及不同 SDK 版本相关。
- 测试发现通过 Zephyr 网络外壳发出的 DNS 请求有时成功有时失败,且与调制解调器的固件有关,其部分访问受限,相关技术受专利保护。
- 深入研究后发现,nRF9160 调制解调器固件在 LTE Cat-M1 和 NB-IoT 网络中使用不同的协议(PCO 和 ePCO)来处理 DNS,一些 NB-IoT 网络不符合 3GPP 规范导致 DNS 失败,网络提供商和 Nordic 在此场景下表现不佳,目前确保设置备用 DNS 地址是较可靠选项。
重要细节: - Golioth 的 OTA 固件更新实现与推荐框架集成,以确保固件更新失败时能优雅恢复。
- 测试中 nRF9160 开发套件在不同地理位置运行大量固件更新时出现类似报告的问题,下载新固件后设备无法解析域名并回滚。
- Nordic 是行业中较开放的供应商,但其调制解调器部分固件受专利限制且文档有限。
- 3GPP 制定无线通信标准,但相关技术专利化,导致调制解调器固件难以开源。
- 深入研究发现固件中用于解析服务器域名的
zsock_getaddrinfo
函数与调制解调器的交互机制,以及nrf_setdnsaddr
函数的作用等。 - 调制解调器的 RRC 消息及相关协议在设备与网络连接过程中起着重要作用,通过 3GPP 规范可深入了解其过程。
- 最终发现问题根源在于封闭源的调制解调器固件和不透明的移动网络运营商基础设施,呼吁行业改变,重视开源和透明度。
**粗体** _斜体_ [链接](http://example.com) `代码` - 列表 > 引用
。你还可以使用@
来通知其他用户。