Which first-hop redundancy protocol dynamically distributes client traffic between multiple routers?