I have a 100/100 Mbps fibre connection, and I'm sharing this connection between myself and two neighbors. Each neighbor pays me an amount equivalent to the speed they want on the network. A part of my value add is to give them double the speed they pay for when the network is not fully utilized, but to guarantee that they will get their minimum bandwidth when everyone is fully utilizing the network.
I would like to have access to the full 100 Mbps when no one is using.
Neighbor 1 should get 20 Mbps when no one is using, but 10 when others are using.
Neighbor 2 should get 80 Mbps when no one is using, but 40 when others are using.
I have PfSense running on a dedicated box with 4 Ethernet ports, 1 for the WAN interface and then 3 for 3 separate LANs (1 for myself and 1 for each of the neighbors).
According to my research it seems that HFSC queues may be able to do the job, however I'm struggling with the details. How do I split the WAN interface among the LAN interfaces? What parameters in the service curves would result in the desired behavior?