[En-Nut-Discussion] ARP packets crashing the TCP stack

Marek Pavlu pavlu at HWserver.cz
Tue Jun 20 02:13:22 CEST 2006


Hi, 

NutEventBroadcastAsync is posibility... 
I use ICMP protokol for sending ping from application and I use it
frequently(as detection living device on ethernet) for guard ethernet
devices, it is like wathdog.

I discover that sending ping from two thread's in the same
time(approximately, by arp timeout) and to same IP addres is road to hell
when device with this IP is gone or in reboot state...

Thereafter one or both threads waiting forever in ARP on NutEventWait... 

But this is only first problem and I avoid this problem by using always
different IP address for ping. 

Second problem is in the rxi5 thread, in some case rxi5 waiting forever on
NutEventWait, interrupt service rutine send post to rxi5, all other threads
working fine, but rxi5 still waiting:(.

Regards, 
                Marek Pavlu 

//  -----Original Message----- 
//  From: en-nut-discussion-bounces at egnite.de [mailto:en-nut-discussion- 
//  bounces at egnite.de] On Behalf Of Harald Kipp 
//  Sent: Sunday, June 18, 2006 8:54 PM 
//  To: Ethernut User Chat (English) 
//  Subject: RE: [En-Nut-Discussion] ARP packets crashing the TCP stack 
//  
//  We recently had a case, where it was possible to freeze the TCP stack 
//  on 3.9 and later by using simple ping flooding. I assumed that we got 
//  a test case to fix this problem. As it later turned out, it was a 
//  problem in the RTL8019AS driver, when running in edge triggered 
//  interrupt 
//  mode. 
//  
//  Some time ago Michael Jones prepared a ARP flood test without "success".

//  No problem appeared. 
//  
//  However, just now I recognized the call to NutEventBroadcastAsync() in 
//  arpcache.c. Actually it is called nowhere else, except in an old 
//  application, 
//  from where I removed it later with a simple comment 
//  /* Broken? */ 
//  
//  May be the problem is located here? 
//  
//  Harald 
//  
//  
//  At 23:30 14.06.2006 +0200, you wrote: 
//  >Hi Lloyd, 
//  > 
//  >Tell me, it is really crush the TCP stack? 
//  >I have some problem's too, but i find it in thread rxi5, rxi5 wait on 
//  >NutEventWait, irq service send post to rxi5, but rxi5 sill waiting on 
//  >NutEventWait. 
//  > 
//  >However other thread's still working fine(if do not needed incoming 
//  packets 
//  >from ethernet), but without ethernet services :(((. 
//  > 
//  >If you want, I send you code for detecting this problem, but is 
//  necessary 
//  >some modification of Ethernut code... 
//  > 
//  >(I Send it here, but without reaction :(  ) 
//  
//  _______________________________________________ 
//  En-Nut-Discussion mailing list 
//  En-Nut-Discussion at egnite.de 
//  http://www.egnite.de/mailman/listinfo.cgi/en-nut-discussion 



  _____  

avast! Antivirus <http://www.avast.com>  : Odchozi zprava cista. 


Virova databaze (VPS): 0625-1, 19.06.2006
Testovano: 20.6.2006 2:13:22
avast! - copyright (c) 2000-2006 ALWIL Software.






More information about the En-Nut-Discussion mailing list