TCP/IP: Protocol: Routing Protocols Since TCP/IP is the protocol used for the Internet, it is a necessity that the protocol supports the immense size. TCP/IP must support routing capabilities, if not, information sent out to the Internet may never be delivered to its proper destination. Routers use routing tables which designate where specific IP Address ranges exist. The benefit is to determine which direction the frames must be sent in order to reach their destination. It is also possible to determine which path is best if there are multiple paths to reach the same destination. Multiple destinations allow for redundancy of delivery if a path should fail. For example, look at Figure 1. Let's assume a company is made up of four buildings. Each building site is connected to two other sites through routers. Router A hosts Network 1, Router B hosts Network 2 and so on as shown in the diagram. If the connection between Router A and Router B is somehow broken, Network 1 can still communicate with Network 2 by going through Router D and Router C. Communication goes the other way as well and all four networks are still able to carry on full communications. When one connection fails, the routers can detect the failure and react appropriately to maintain communications. FIGURE 1 There are five basic routing protocols to manage the routers to maintain communications for all the networks. These five routing protocols are: · Border Gateway Protocol (BGP) · Routing Information Protocol (RIP) · Open Shortest Path First (OSPF) · Interior Gateway Routing Protocol (IGRP) · Enhanced Interior Gateway Routing Protocol (EIGRP) NOTE: IGRP and EIGRP are proprietary routing protocols from Cisco. Setting up router tables can be done in two ways, either static or dynamic. To statically manage a number of routers can be a chore. Each routing table must be manually entered for each router. If a route is added or removed, then each routing table must be edited on all routers. For larger companies, this prospect can become a very lengthy task. Routing tables can be dynamically modified by using one of the routing protocols. The table is updated from other routing tables which are created by the router. A router can detect other routers to communicate with to exchange information. NOTE: The routing protocols are part of the TCP/IP Application Layer – see Transmission Control Protocol/Internet Protocol (TCP/IP). So, before we look at each routing protocol, let us look in more detail about the functions of the routing protocols. We discussed static and dynamic table creation, so let’s look at Single and Multipath. A Routing Protocol which handles single path can only manage a single path in the routing table. Looking back at Figure 1, this means Router B will send data to Network 1 through Router A only. Router B has no path for Network 1 through Router C. On the other hand, with a Multipath Protocol, Router B can get to Network 1 through Router A or through Router C. The next item is dependant on whether the routers are Flat or Hierarchical. In a Flat system, all routers are equal in importance. In Figure 1, Routers A, B, C and D are all considered equal. When one router needs to send data to a specific network, it sends the data to any other router to reach the destination. This is only true in a Multipath system. With a Hierarchical setup, Routers can be designated as the Backbone as shown in Figure 2. Here, Routers A and D are the Backbone. All communication from Routers B, C, E and F go through Routers A and D. The layout is of course set up differently. In Figure 1, if Router A were connected to the Internet, it could be designated as a Backbone since it should definitely be a more used path. FIGURE 2 Another function is the Interior or Exterior routing. If a company has routers within the company, these are usually running an Interior type protocol. The Interior type protocol allows the routers within the company to update one another. Exterior type protocols is used on the Internet to allow sharing between routers which may not be owned by the same company. Within a company, ‘Domains’ may be set up to keep routers separated from each other. A ‘Domain’ may be a department, floor, building or any separation needed. Each ‘Domain’ is then set as Interior to allow the routers within that single ‘Domain’ to share routing tables with one another. Any router problems of one ‘Domain’ should not impact another unless the routers are using an Exterior type protocol. The last item to cover in Router Protocol functions is Distance Vector and Link State. With a Distance Vector Protocol, every router sends out all or a large part of its routing table to other routers directly connected to it. With a Link State Protocol, the routing table is sent to all routers on the local network. The problem with a Distance Vector Protocol is that the routers update their tables slowly. When all routers are updated and routes are agreed on by all routers, this event is called convergence. Link State Protocols converge quickly but ultimately use more of the router’s resources. So, let’s look at the specifics for each of the five protocols. BGP – Dynamic, Multipath, Flat, Exterior, Distance Vector RIP – Dynamic, Single-path, Flat, Interior, Distance Vector OSPF – Dynamic, Multipath, Hierarchical, Interior, Link State IGRP – Dynamic, Multipath, Flat, Interior, Distance Vector EIRGP – Dynamic, Multipath, Flat, Interior, Distance Vector Each router or device can be set to use a specific routing protocol that will serve the needs of the network. All routers which must communicate with one another are required to have the same protocol. Any routers with different protocols cannot communicate with one another to share information. NOTE: Having different protocols cannot allow two devices to communicate. It is as similar as having a system running TCP/IP and another with AppleTalk. The two cannot communicate in any way without some type of intervening ‘translator’. Keep in mind that protocols are basically a set of rules which determine how information is sent over a network. A similar analogy is when two people are speaking two very different languages (we are not talking American English and British English, but English and Chinese or Russian).