The Balanced Routing protocol has been defined as follows: When routing a sequence of data messages from a source to a destination, the protocol will uniformly distribute these messages over all k-monotonic paths from the source to the destination; i.e., over all paths whose distance to the destination never increases at each hop, and may remain constant in at most k hops. This protocol is a more general case of the Distance-Vector Routing protocol in which a sequence of data messages from a source to a destination would follow the same shortest-distance path from the source to the destination; in fact, by setting k to zero, the Balanced Routing protocol becomes the Distance-Vector protocol. Link-State protocols are another type of routing protocols that use shortest-distance paths. In this work, we define and implement the Balanced Routing protocol in a more comprehensive form, and we demonstrate how it performs better than existing Distance-Vector and Link-State Routing protocols.