DHCPv4 packet processing (Kea 1.8.0)
Process Query on its Message Type
Process Discover
Process Request
Process Release
Process Decline
Process Inform
Receive query
input
Service Enabled
Callout buffer4_receive
hook
Unpack query
Classify query
Callout pkt4_receive
hook
Check DROP class
Avoid same client race in multi-threaded mode
postpone processing or drop
Callout leases4_committed
hook
Park
Callout pkt4_send
Send response
Pack response
Callout buffer4_send
output
Drop packet
error
service is enabled
service is disabled
CONTINUE
SKIP
DROP
on error
CONTINUE
DROP
query in DROP class
queries from the same client possible race
unknown message type
on error
on error
on error
on error
on error
CONTINUE
DROP
PARK
unpark
CONTINUE
SKIP
DROP
CONTINUE
DROP
dashed arrow means asynchronous processing