摘要

为了避免以太网通信中大量短帧数据包引起通信阻塞问题,LwIP协议栈采用了Nagle算法和延迟ACK策略提高以太网通信效率。嵌入式以太网通信以短帧数据包为主,Nagle算法和延迟ACK策略大大降低了通信的实时性,这在单向数据传输的应用中尤为明显。本文将LwIP协议栈中的延迟ACK定时器独立出来,并提出了一种基于数据统计的自适应延迟ACK定时算法,该算法可以根据上位机发送数据包的周期自主修改延迟ACK定时器周期。最后设计了通信实时性测试实验,证实了延迟ACK定时周期可以在1s左右跟踪上位机的数据发送周期,自适应的定时周期约为发送周期的80%100%,且通信延迟小于1ms,该改进在保证ARM使用效率的前提下提高了以太网通信的实时性。