Network layer routing protocols provide the communication protocols and algorithms for determining routes to every destination and also for distributing the routing information throughout the network.