The base specification for DHCP is [RFC:2131], but that just describes the structure of the packets. The packets contain "options", which are specified in [RFC:2132]. We only implement part of the DHCP spec. The biggest missing feature is probably that we don't implement the broadcast option. All replies are sent out on the interface associated with their VM and are sent as broadcast packets.