After some investigation of routed network, I found out I could achieve distributed DHCP if segment are created for each hypervisor.
There were already scheduling logics using SegmentHostMapping, I think I don't have to change RPC at all.
Maybe what I need is just to implement routed network for hypervsior(https://bugs.launchpad.net/neutron/+bug/1846285)
After some investigation of routed network, I found out I could achieve distributed DHCP if segment are created for each hypervisor.
There were already scheduling logics using SegmentHostMapping, I think I don't have to change RPC at all.
Maybe what I need is just to implement routed network for hypervsior(https:/ /bugs.launchpad .net/neutron/ +bug/1846285)