Problem polega na oszacowaniu maksymalnej ilości leasów/sekundę, jaka można uzyskać na serwerze linuksowym, na którym śmiga ISC DHCP.
Generalnie DHCP nie jest szczególnie ramo/cpu-żerny. Zgodnie z RFC każdorazowo podczas wydania adresu należy dopisać informację na dysk do pliku dhcpd.leases. Jest do tego używana fsync(); serwis czeka aż około 14 kb danych zapisze się na dysk i dopiero po tym wydaje kolejną lease. Czytałem o workaroundach takich, by ten plik do ramdrive'u dać - to niestety odpada.
Ilość wiadomości DHCP-owych w pewnym przypadku sięga przez większość czasu 700/s, z peakami do 900/s.
Analizowałem szybkość zapisu poprzez dd:
dd bs=[nie pamietam wielkosci leasy w dhcpd.leases] count=256 if=/dev/zero of=test oflag=dsync
;
Czy na tej podstawie można coś estymować?
Jaki sprzęt to uciągnie? Oczywiście zakładam, że to będzie przynajmniej 1 para failoverowa.
No i teraz nasunęło mi się kolejne pytanie: Kombinować coś ze I/O schedulerem? Jak system zoptymalizować pod w/w kierunkiem?