[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[lwip-devel] [bug #58551] mDNS: incorrect probe timings during rate limi
From: |
Jasper Verschueren |
Subject: |
[lwip-devel] [bug #58551] mDNS: incorrect probe timings during rate limiting |
Date: |
Fri, 12 Jun 2020 06:07:19 -0400 (EDT) |
User-agent: |
Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/83.0.4103.97 Safari/537.36 |
URL:
<https://savannah.nongnu.org/bugs/?58551>
Summary: mDNS: incorrect probe timings during rate limiting
Project: lwIP - A Lightweight TCP/IP stack
Submitted by: jasperv
Submitted on: Fri 12 Jun 2020 12:07:17 PM CEST
Category: apps
Severity: 3 - Normal
Item Group: Faulty Behaviour
Status: None
Privacy: Public
Assigned to: None
Open/Closed: Open
Discussion Lock: Any
Planned Release: None
lwIP version: git head
_______________________________________________________
Details:
Commit:6302423d mdns: handle tiebreaking loose like conflict, introduces a bug
in the probing part of mDNS.
Most changes in this commit are valid, except the following:
@@ -2294,8 +2307,13 @@ mdns_probe_and_announce(void* arg)
mdns->sent_num = 0;
}
- sys_timeout(MDNS_PROBE_DELAY_MS, mdns_probe_and_announce, netif);
-
+ if (mdns->sent_num && mdns->rate_limit_activated == 1) {
+ /* delay second probe if rate limiting activated */
+ sys_timeout(MDNS_PROBE_MAX_CONFLICTS_TIMEOUT,
mdns_probe_and_announce, netif);
+ }
+ else {
+ sys_timeout(MDNS_PROBE_DELAY_MS, mdns_probe_and_announce, netif);
+ }
break;
case MDNS_STATE_ANNOUNCE_WAIT:
case MDNS_STATE_ANNOUNCING:
This changes the time in between probes to 5 seconds in case of rate
limiting.
This is against RFC, the RFC only specifies to wait 5 seconds before
restarting.
RFC6762 section 8.1 Probing:
If fifteen conflicts occur within any ten-second period, then the
host MUST wait at least five seconds before each successive
additional probe attempt. This is to help ensure that, in the event
of software bugs or other unanticipated problems, errant hosts do not
flood the network with a continuous stream of multicast traffic. For
very simple devices, a valid way to comply with this requirement is
to always wait five seconds after any failed probe attempt before
trying again.
So it states that we should wait 5 seconds before we try probing again.
It doesn't specify that we need to change our probing timings from 250 ms to 5
seconds.
This particular change should be reverted.
Attached a patch can be found.
Kind regards,
Jasper
_______________________________________________________
File Attachments:
-------------------------------------------------------
Date: Fri 12 Jun 2020 12:07:17 PM CEST Name:
0001-mDNS-fix-bug-with-probe-timing-during-rate-limiting.patch Size: 1KiB
By: jasperv
<http://savannah.nongnu.org/bugs/download.php?file_id=49246>
_______________________________________________________
Reply to this item at:
<https://savannah.nongnu.org/bugs/?58551>
_______________________________________________
Message sent via Savannah
https://savannah.nongnu.org/
[Prev in Thread] |
Current Thread |
[Next in Thread] |
- [lwip-devel] [bug #58551] mDNS: incorrect probe timings during rate limiting,
Jasper Verschueren <=