[Kea-users] Raw socket input buffer
kea at jack.fr.eu.org
kea at jack.fr.eu.org
Mon Jul 31 08:58:45 UTC 2017
Hi,
I have a kea4 server, version 1.1.0, I added hooks that connect
externally (the important information : that hook is "slow", it does TCP
connect)
That part works well
However, when the server takes too many queries (I don't know how "too
many" is), a strange behavior appears: the server keep and answer
outdated requests (some kind of input buffer, I guess), which clients
timed-out in the mean time, leading to another requests etc -> broadcast
storm and global failure
I will try to explain that using the timeline below:
t: client1 make request1-1
client2 make request2-1
client3 make request3-1
t + 1: server process request1-1
t + 2: server keep processing request1-1
t + 3: client1 time out request1-1 and make request1-2
client2 time out request2-1 and make request2-2
client3 time out request3-1 and make request3-2
t + 4: server send answer1-1, and start processing request2-1 (which is
already timed out by the client2)
answer1-1 reach client1 and is dropped
t + n: client keep sending new requests, timing out old one
server keep processing obsolete requests
I tried to reduce /proc/sys/net/core/rmem_max to 4096, this does not fix
the issue (probably because 4096 is still a lot of dhcp-packets :p)
Any tip, trick, configuration or whatever on that issue ?
Best regards,
More information about the Kea-users
mailing list