Distance vector routing is an algorithm where each node maintains a routing table with the distances to all other nodes and shares this table periodically with its neighbors. Nodes initially only know the cost to directly connected neighbors and update their tables based on information received, potentially leading to a "count to infinity" problem if routes oscillate. Solutions include using split horizon to not pass back the source of a route and poison reverse to mark such routes as infinite. RIP is an implementation of distance vector routing that shares updates every 30 seconds.