Routers organise and distribute network traffic both with a local area network (LAN) and externally. In order to do this each machine on the network and any access externally must communicate with the router by the use of an IP address. For example, on my home network my router has two IP addresses: an internal one that the LAN devices use in the format 192.160.0.xxx, with the router being 192.168.0.1 and externally by the Internet Service Provider allocated static IP address. Therefore routers have an IP address for each network interface.
Routing algorithms, according to Kurose & Ross (2010, p374), find “a good path from source router to destination router” that is usually based on least cost. Both the link-state and the distance-vector algorithm router network traffic on this least cost basis on a different basis.
The link-state algorithm assumes that complete information about the network structure between source and destination is known. This is accomplished by the source sending out special packets to all other network nodes that respond with the status of the link which allows all nodes to calculate the least cost path through the network. An example of the use of the link-state routing algorithm is the Open Source Path First (OSPF) routing protocol used on the Internet which Schluting (2008) describes as “Traffic Cop For Your Routing Domain” due to its system knowledge and ability to direct traffic based on all known link costs.
The distance-vector routing algorithm differs from the link-state routing algorithm in that it routes network traffic without complete information about the network structure between source and destination. This routing algorithm receives information about least cost paths from only directly connected nodes which in turn communicates with its directly connected nodes and so on (iteratively) until the computations are complete between source and destination and the least cost path is known. An example of this usage would be a network device on a local area network using an internal router in order to send data to an external ftp server (e.g. AppleTalk) where the route is established by neighbours rather than by knowledge of the whole path to the ftp server.