下载 FreeRTOS
 

出色的 RTOS & 嵌入式软件

最新资讯
简化任何设备的身份验证云连接。
利用 CoAP 设计节能型云连接 IoT 解决方案。
11.0.0 版 FreeRTOS 内核简介:
FreeRTOS 路线图和代码贡献流程。
使用 FreeRTOS 实现 OPC-UA over TSN。
本部分提供了适用于学习使用退避算法库的示例项目的链接。 另外,IoT 参考集成部分展示了集成到应用程序中的库。

退避算法

简介

backoffAlgorithm 库是一个实用程序库,用于隔开同一数据块的重复传输,以避免网络堵塞。此库使用带抖动的指数退避算法来计算重试网络操作(如与服务器的网络连接失败后重新尝试连接)所需的退避时间。

与服务器的网络连接或操作请求失败后进行重试时,通常使用抖动指数退避。带抖动的指数退避可通过将重试请求分散到尝试网络连接的多个设备上,来减少因网络堵塞或服务器负载过高而导致的服务器网络操作失败。此外,在连接不佳的环境中,客户端随时可能断开连接。退避策略有助于客户端在不太可能成功的情况下不重复尝试重新连接,从而节省电池电量。

此库以 C 编写,设计符合 ISO C90MISRA C: 2012 标准。此库不依赖于标准 C 库以外的任何库,并且没有堆分配,因此它不仅适合 IoT 微控制器,而且还可完全移植到其他平台。

请参阅 backoffAlgorithm 库 API 引用

此库可免费使用,且根据 MIT 开源许可进行分发。

 

backoffAlgorithm 的代码大小(使用 GCC 为 ARM Cortex-M 生成的示例)
文件使用 -O1 优化使用 -Os 优化
backoff_algorithm.c0.1K0.1K
总估计值0.1K0.1K
Copyright (C) Amazon Web Services, Inc. or its affiliates. All rights reserved.