终于找到了解决方法,从LWIP的论坛上找到的,网址如下http://savannah.nongnu.org/bugs/?36380
原来LWIP1.4.1版本有bug,竟然被我碰到了!!!!关于bug的修改,论坛也提供了补丁http://savannah.nongnu.org/patch ... tem_id=8237#options
补丁中修改了tcp_out.c文件中的tcp_rexmit_rto(struct tcp_pcb *pcb)函数
diff --git a/src/core/tcp_out.c b/src/core/tcp_out.c
index b9fc339..524416e 100644
--- a/src/core/tcp_out.c
+++ b/src/core/tcp_out.c
@@ -1261,11 +1261,21 @@ tcp_rexmit_rto(struct tcp_pcb *pcb)
for (seg = pcb->unacked; seg->next != NULL; seg = seg->next);
/* concatenate unsent queue after unacked queue */
seg->next = pcb->unsent;
+#if TCP_OVERSIZE
+ /* if last unsent changed, we need to update unsent_oversize */
+ if (pcb->unsent == NULL) {
+#if TCP_OV