|
在进行TCP双向通信的时候,我发现每隔12H就会断开一次,并且是很精准的,于是打开了LWIP的DEBUG选项,下面是我抓取到断开的时候的LOG:
客户端的LOG:
dhcp_coarse_tmr()
dhcp_coarse_tmr(): t1 timeout
dhcp_t1_timeout()
dhcp_t1_timeout(): must renew
dhcp_renew()
transaction id xid(4bb5f646)
dhcp_renew: RENEWING
dhcp_renew(): set request timeout 2000 msecs
tcp_output: snd_wnd 4800, cwnd 65535, wnd 4800, seg == NULL, ack 271206910
dhcp_recv(pbuf = 0x4d08b8) from DHCP server 192.168.10.1 port 67
pbuf->len = 250
pbuf->tot_len = 250
searching DHCP_OPTION_MESSAGE_TYPE
DHCP_NAK received
dhcp_handle_nak(netif=0x4a11b0) wl0
tcp_pcb_purge
tcp_abandon: sending RST
tcp_rst: seqno 271206910 ackno 27121711.
dhcp_discover()
transaction id xid(5851f42d)
dhcp_discover: making request
dhcp_discover: sendto(DISCOVER, IP_ADDR_BROADCAST, LWIP_IANA_PORT_DHCP_SERVER)
dhcp_discover: deleting()ing
dhcp_discover: SELECTING
dhcp_discover(): set request timeout 2000 msecs
[F4] : [L1] : 0000 12:00:00.019 netconn_close failed with error -11
[F4] : [L1] : 0001 12:00:00.rom DHCP server 192.168.10.1 port Disconnected from the TCP server!
Disconnected from the TCP server!
P server 192.168.10.1 port 67
pbuf->len = 311
pbuf->tot_len = 311
skipping option 252 in options
skipping option 26 in options
searching DHCP_OPTION_MESSAGE_TYPE
DHCP_OFFER received in DHCP_STATE_SELECTING state
dhcp_handle_offer(netif=0x4a11b0) wl0
dhcp_handle_offer(): server 0x010aa8c0
dhcp_handle_offer(): offer for 0x020aa8c0
dhcp_select(netif=0x4a11b0) wl0
transaction id xid(5851f42d)
dhcp_select: REQUESTING
dhcp_select(): set request timeout 2000 msecs
服务器端的LOG:
tcp_receive: window update 6000
tcp_receive: pcb->rttest 0 rtseq 27121311 ackno 27121711
tcp_fasttmr: delayed ACK
tcp_recved: received 400 bytes, wnd 6000 (0).
tcp_receive: window update 6000
tcp_receive: pcb->rttest 0 rtseq 27121311 ackno 27121711
tcp_recved: received 400 bytes, wnd 6000 (0).
tcp_fasttmr: delayed ACK
tcp_receive: window update 6000
tcp_receive: pcb->rttest 0 rtseq 27121311 ackno 27121711
tcp_fasttmr: delayed ACK
tcp_recved: received 400 bytes, wnd 6000 (0).
tcp_receive: window update 6000
tcp_receive: pcb->rttest 0 rtseq 27121311 ackno 27121711
tcp_fasttmr: delayed ACK
tcp_recved: received 400 bytes, wnd 6000 (0).
tcp_receive: window update 6000
tcp_receive: pcb->rttest 0 rtseq 27121311 ackno 27121711
tcp_fasttmr: delayed ACK
tcp_recved: received 400 bytes, wnd 6000 (0).
tcp_receive: window update 6000
tcp_receive: pcb->rttest 0 rtseq 27121311 ackno 27121711
tcp_fasttmr: delayed ACK
tcp_recved: received 400 bytes, wnd 6000 (0).
tcp_receive: window update 6000
tcp_receive: pcb->rttest 0 rtseq 27121311 ackno 27121711
tcp_fasttmr: delayed ACK
tcp_recved: received 400 bytes, wnd 6000 (0).
tcp_receive: window update 6000
tcp_receive: pcb->rttest 0 rtseq 27121311 ackno 27121711
tcp_fasttmr: delayed ACK
tcp_recved: received 400 bytes, wnd 6000 (0).
tcp_receive: window update 6000
tcp_receive: pcb->rttest 0 rtseq 27121311 ackno 27121711
tcp_fasttmr: delayed ACK
tcp_recved: received 400 bytes, wnd 6000 (0).
tcp_receive: window update 6000
tcp_receive: pcb->rttest 0 rtseq 27121311 ackno 27121711
tcp_recved: received 400 bytes, wnd 6000 (0).
tcp_fasttmr: delayed ACK
tcp_pcb_purge
[F4] : [L1] : 0107 11:58:03.248 netconn_close failed with error -11
TCP Client disconnected! Please reconnect the TCP Client
===============================================================
Listening for incoming TCP client connection on Port:50007
服务器端没有什么有效信息,主要看客户端的,想知道LWIP中哪个地方会去发送NACK数据包,我看了LWIP的源码没有找到DHCP服务器发送NACK的地方,因为想看看是什么原因导致了发送NACK包导致续约失败
|
-
|