[bug #54700] Unexpected expiry of pending ARP table entry

classic Classic list List threaded Threaded
2 messages Options
Reply | Threaded
Open this post in threaded view
|

[bug #54700] Unexpected expiry of pending ARP table entry

madhu
URL:
  <https://savannah.nongnu.org/bugs/?54700>

                 Summary: Unexpected expiry of pending ARP table entry
                 Project: lwIP - A Lightweight TCP/IP stack
            Submitted by: fmatignon
            Submitted on: Thu 20 Sep 2018 06:40:34 PM CEST
                Category: ARP
                Severity: 3 - Normal
              Item Group: Change Request
                  Status: None
                 Privacy: Public
             Assigned to: None
             Open/Closed: Open
         Discussion Lock: Any
         Planned Release: None
            lwIP version: git head

    _______________________________________________________

Details:

Hi,

In current etharp implementation, the ctime field of an ARP table entry is
reset when an empty entry is selected for a given address.

This can create situations where an ARP table entry can expire even if the
application (any upper layer) has initiated an ARP query immediately before.
Once the entry has expired, it could be recycled for another address and then
the ARP reply corresponding to the request previously sent could be dropped if
there are no more available empty entry in the table.
(see attached commented debug log for a more concrete example)

A suggestion to avoid such a situation would be to reset the ctime field each
time the application explicitely request an ARP resolution with
etharp_query().
(see attached patch)

I couldn't find any reference document on ARP table management (and
specifically on pending entry management).
Do you see any drawback or problem with this suggestion?

Thanks!



    _______________________________________________________

File Attachments:


-------------------------------------------------------
Date: Thu 20 Sep 2018 06:40:34 PM CEST  Name:
etharp-early-table-entry-expiry.patch  Size: 949B   By: fmatignon

<http://savannah.nongnu.org/bugs/download.php?file_id=45062>
-------------------------------------------------------
Date: Thu 20 Sep 2018 06:40:34 PM CEST  Name: debug.txt  Size: 1KiB   By:
fmatignon

<http://savannah.nongnu.org/bugs/download.php?file_id=45063>

    _______________________________________________________

Reply to this item at:

  <https://savannah.nongnu.org/bugs/?54700>

_______________________________________________
  Message sent via Savannah
  https://savannah.nongnu.org/


_______________________________________________
lwip-devel mailing list
[hidden email]
https://lists.nongnu.org/mailman/listinfo/lwip-devel
Reply | Threaded
Open this post in threaded view
|

[bug #54700] Unexpected expiry of pending ARP table entry

madhu
Update of bug #54700 (project lwip):

                  Status:                    None => Fixed                  
             Assigned to:                    None => goldsimon              
             Open/Closed:                    Open => Closed                

    _______________________________________________________

Follow-up Comment #1:

Pushed, thanks for the patch.

    _______________________________________________________

Reply to this item at:

  <https://savannah.nongnu.org/bugs/?54700>

_______________________________________________
  Message sent via Savannah
  https://savannah.nongnu.org/


_______________________________________________
lwip-devel mailing list
[hidden email]
https://lists.nongnu.org/mailman/listinfo/lwip-devel