Bad load balancing of network traffic between processes
You can use pfctl to limit bandwidth (up or down independently) based on IP address.  Alternatively, you can use it to do some mild QoS so that DNS requests &amp; responses are given top priority, which I think should help much of your pain.