EIGRP stands for Enhances Interior Gateway Routing Protocol; EIGRP is an enhanced distance vector protocol, relying on the Diffused Update Algorithm (DUAL) to calculate the shortest path to a destination within a network. (Cisco Document ID: 16406)
Below i have evaluated and summarized some of the key strength weakness and operational requirements for EIGRP.
EIGRP is an advance distance vector protocol, one of its core strengths is its fast network convergence capabilities, unlike other routing protocols EIGRP keeps feasible successor routes right into the routing table, this allows millisecond convergence should the successor route fail.
Flexible in summarization:
Unlike OSPF, EIGRP allows you to summarize anywhere, in bigger environments where routers are advertising hundreds of networks, route summarization can greatly enhance router's and network operational capabilities, its less taxing on CPU / memory and cheaper to run / maintain.
Unequal cost load-balancing:
EIGRP allows unequal cost load balancing, which means you can use 2 different cost links to load balance traffic, no other protocol can do this.
Unlike other distance vector protocols, EIGRP supports VLSM and discontinuous networks, it supports class less routing and its 100 % loop free protocol.
One of the core weaknesses is its cisco proprietary, it does not interoperate with other vendor devices, and so running it in a mixed environment is not an option.
EIGRP Operational requirement:-
In terms of operational requirement, EIGRP is simple to configure and inexpensive to run.
EIGRP uses partial and incremental updates, these updates are only triggered when a change occurs and when it does, it only sends the changed information to the routers affected, this greatly reduces bandwidth utilization.
The feasible successor technology greatly reduces the total processor utilization of an AS by requiring only the routers that were affected by a topology change to perform the route re-computation. Furthermore, the route re-computation only occurs for routes that were affected. Only those data structures are accessed and used. This greatly reduces search time in complex data structures. (Cisco-Doc-ID-13669)
EIGRP stores all routes advertised by neighbors so it can quickly fall back to the feasible successor should the successor fail, the more neighbor a router has, the more memory it is going to use.
In contrast with OSPF, EIGRP uses less memory then OSPF, OSPF stores all of the link states for all of the areas that it is in.
EIGRP Commercial implementation:-
- EIGRP does not require a hierarchical network design to operate efficiently.
- EIGRP is protocol independent, apart from ipv4 /6 it also supports IPX and AppleTalk, customers who are using these protocols can leverage the protocol independent EIGRP capabilities to achieve higher return on investments.
- EIGRP is less complex to implement and it also offers efficient route calculations when compared with OSPF, e.g. EIGRP uses bandwidth, delay, reliability and load when calculating optimal routes where as OSPF only takes bandwidth into consideration when calculating optimal routes.
- Keeping the above points in mind, EIGRP will be more viable commercially provided that it’s a full end to end cisco implementation; EIGRP can also redistribute routing information with other routing protocol with router redistribution or using an exterior gateway protocol (BGB).
OSPF Strengths, weakness, operational requirements and commercial implementation.
OSPF (Open Shortest Path First) is a classless, link-state routing protocol. The current version of OSPF for IPv4 is OSPFv2 introduced in RFC 1247 and updated in RFC 2328 by John Moy. In 1999, OSPFv3 for IPv6 was published in RFC 2740. (OU CCNA Course)
OSPF was primarily designed to address the limitations of distance vector routing protocols, mainly with slow convergence and inefficient bandwidth usage.
Below I have outlined strengths, weakness, operational requirements and commercial implementation of OSPF.
OSPF is an IETF standard:-
One of the most noticeable advantages with OSPF is its IETF standard, it is vendor independent.
Topological Map / LSDB
Unlike Distance vector protocol, each OSPF participating routers maintains a link-state database, this database contains all the LSA's received from other routers, OSPF uses the shortest path first algorithm to create an SFP tree from this database, the SFP tree is then used to populate the routing table with the best routes/paths to each network
One of the most attractive features of OSPF is its ability to quickly adapt to topology changes.
OSPF uses 2 mechanisms to detect topology changes,
1. Interface status changes
2. Failure to receive hello packets from its neighbor (dead timer)
Once a failure has been detected, the router that detected the failure floods the LSP to all other routers immediately, the immediate flooding of LSP in contrast to a distance vector protocol which needs to process each routing updates and update its routing table before flooding them out other interfaces makes OSPF converge must fast. (OU CCNA Course Exploration-two )
Unlike distance vector protocols, an area routing capability is provided in OSPF (area 0), enabling an additional level of routing protection and a reduction in routing protocol traffic
After the initial flooding of LSP's, LSP's are only sent when there is topology change and it contains only the information which has been changed, this allows efficient bandwidth usage.
Link state protocols uses the concept of areas for efficient routing and better summarization , multiple areas create hieratical designs to network, in order to scale OSPF enabled networks properly, adopting a hierarchical design environment is one of the most important factors.
Supports VLSM or CIDR
Not prone to routing loops
Link state protocols such as OSPF are complex to configure and implement in contrast with distance vector protocols.
Only supports IP:
Unlike EIGRP, OSPF is not platform independent.
Can only summarize at ABR:
This directly increases the cost of running OSPF in terms of resources vs. the hybrid EIGRP protocol, The larger the network, the larger the link state databases, thus more resource intensive (cpu/ memory).
OSPF Operational requirements:
CPU / memory
Link state protocols such as OSPF are usually more resource intensive than distance vector protocols, its memory intensive as each router maintains a local Link state database, on top of that SPF algorithm itself is very processor intensive , as I stated above, OSPF can only summarize at the ABR level, this makes the database even larger and costly to maintain.
In a network with substantial topology changes, flooding of LSP's can adversely affect the available bandwidth on the network, because of the summarization limitation, any instability in a network can cause issues with available bandwidth. The key with scaling OSPF networks is in designing a solid hierarchical network, if its properly designed, LSP will be limited per area resulting in less LSP's. (OU CCNA Course Exploration-two )
DR's exist for the purpose of reducing network traffic by providing a source for routing updates, when designing OSPF networks, one should be mindful of the operational requirements in terms of cpu/memory and bandwidth before placing DR routers as they would generally require more resources.
OSPF Commercial implementations:
OSPF is one of the most widely used protocols in the industry, within the IGP space, its IETF standard is one core reason for its popularity , secondly its vendor independent. Even though OSPF is resource intensive then its counter parts, however with today’s newer routers this is no longer a bottleneck.
Suitable and Unsuitable environments
OSPF suitable environment range from large to small, because of its wide array of features: fast convergence, equal-cost-multipath, TOS routing, areas, etc, it can be used in larger and smaller networks as long as it’s designed correctly, however OSPF has a very limited ability to express policy. A system wanting more sophisticated policies would have to be split up into separate ASes, running a policy-based EGP between them. (J Moy)
BGP Strengths, weakness, operational requirements and commercial implementation
BGP is an inter-Autonomous System routing protocol. The primary function of a BGP speaking system is to exchange network reachability information with other BGP systems (T, Rekhter, & Hares). BGP is used to exchange routing information for the Internet and is the protocol used between Internet service providers (ISP). (OU Course -BGP-Chapter 38)
Unlike IGP, BGP is more of a policy definition tool rather than just a routing protocol, to select the best route, BGP assigns 11 attributes to each path, and “one of the most important path attributes is the Autonomous System path, or AS_PATH, The AS_PATH allows straightforward suppression of the looping of routing information. The AS_PATH serves as a powerful and versatile mechanism for policy-based routing” in addition each of this attributes can be administratively tuned for extremely granular control, in contrast IGP protocols are designed with intent to provide reachability and fast convergence.
Unlike IGP, BGP can handle thousands of routes in its database, BGP was designed to scale with the growth of the internet, the mechanism which BGB is built have allowed it to scale to carry more than 200,000 prefixes in production networks and more than 500,000 prefixes in laboratory test. The only practical limit to the number of prefixes supported is memory in the router.
BGP makes use of TCP for reliable transport of its traffic between peer routers (T, Rekhter, & Hares), rather than re-inventing the wheel, BGB takes advantage of all TCP functions such as fragmentation, retransmission, acknowledgement and sequencing, it can also use any authentication scheme used by TCP, this greatly enhances BGB capabilities in connection establishment, maintenance and routing information accuracy.
Given the size of current internet, flapping of large number of network routes could be disastrous, to overcome this BGB has a number of features which suppresses instability, e.g. route damping, implementing various timers, soft reconfiguration and route refresh are useful for changing BGB policy without resetting the BGP session.
BGP is the slowest protocol out of all, BGP's lack of policy synchronization often leads to convergence concerns, the reason it is slow is by design, imagine there is a network on the internet which went down, if BGP were to trigger an update every time a network goes down to all the routers on the internet, internet would always be in a state of kiosk.
Routing table growth:
Internet is growing at an exponential rate every year, if the global routing tables grows to the point where older, less capable routers cannot cope with the memory /cpu requirements, these routers will cease to be effective gateways between the parts they connect to, leaving network services unreliable or even unavailable in the interim. (wikipedia)
BGP does not load balance across links by default.
BGP Operational requirements:
Bandwidth and CPU requirements:
After the initial BGP connection setup, the peers exchange complete set of routing information, this is the stage where BGB requires the highest number of CPU cycles, after the initial exchange KEEPALIVE alive messages are exchanged between peers every 30 sec's the amount of CPU cycles consumed by BGP completely depends on the stability of the internet, if the internet is stable KEEPALIVE messages take a very negligible amount of CPU cycles.
BGB memory requirements depends on how much routing information you choose to receive, if you only accept defaults routes from your providers, then it will not require more than the standard router memory, however running full tables is very intensive.
BGP Commercial implementation:
BGP being an internet protocol, it is also commonly used by enterprises other than just ISP's, now a days more and more organizations are hosting their own internet facing web servers, emails servers, vpn servers, etc. within their own public network, the need for redundancy in production environments is obvious, thus the need for multi home connections to service providers, this is where BGP comes into play for enterprises, using BGP they advertise their public address to both ISP's, this in turn gets flooded to the rest of the internet, this way, should one ISP fail, internet will have another route to get to the enterprise public facing servers.