lwip-users
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[lwip-users] A question about the LwIP stats


From: Niels Hendriks
Subject: [lwip-users] A question about the LwIP stats
Date: Thu, 25 Jun 2009 06:11:59 -0700 (PDT)

Hi everybody,

I did some testing with the LwIP stack, and found the resulting LwIP stats  inconsistent with
my assumptions. I'm hoping on of you is able to clarify things for me.

Here's the whats bodering me:

I've coded a TCP send callback function that's sends data to a TCP client. Each time a message from the client
is received (sort of ack callback function thus) the application sends some more data to the client, and increases a counter.
This counters is an indication of how many times the functions is executed/called. My assumptions was that when all of the data has been send,
the function counter is approximately the same as the LwIP received stats for TCP. However this isn't the case.

I assumed that when the callback function gets called (i.e. data is received) that the TCP received stat is increased by 1.
Therefore the func_cnt should be approximately the same als the TCP received stat. What am I missing here?

Thanks for the advice / help.


Below are the function and the resulting screen, the line that is made bold and italic is value of the func_cnt variable after all data is send.

err_t message_acked(void * arg, struct tcp_pcb * tpcb, u16_t len) {
       func_cnt++;  //increase the number of times the function is called
       16_t buff_space = tcp_sndbuf(tpcb); // check the available space in the output buffer

        if(buff_space > bytes_left){    //the remaining data fits completely in the output buffer
            tcp_write(tpcb, pUSB_RAM, bytes_left, NULL);
        }
        else{
            tcp_write(tpcb, pUSB_RAM, buff_space, NULL);
        }
        return ERR_OK;
}



Modname:      Min:          Cur:       Max:       Cnt:                                   
TCP_TMR:       100           100           649       1500                                  
TMR_ISR:        121           198            211       1501                                  
ARP_TMR:       530           572           609         750                                  
TCP_INI:        9661          9661            0          1                                  
1e_SEND:      6393           6393            0          1                                  
ACK_RCV:    1885           3397        6317        702178                                  
APP_IDL:  18249635   18249672  18249759    1501       
                         
xmited:  45878   rexmit:      0   recved:  57012   droped:      0             
errors:      0   chkerr:      0   pktfwd:      0   lenerr:      0             
memerr:      0   rterrs:      0   proErr:      0   opterr:      0



reply via email to

[Prev in Thread] Current Thread [Next in Thread]