Tuesday, February 2, 2010

Routing

Routing protocols fall into four different categories. Classful vs. Classless and Distance Vector vs. Link State. The main difference between Classful and Classless routing protocols are their support of VLSM. Classful routing protocols do not support VLSM. This is due to the fact they do not include the subnet mask with route updates. On the other hand, Classless routing protocols do support VLSM, because they contain subnet mask information within the route updates.
____________________________________________________________________________________

Here is a quick review of the Classful routing protocols.

RIP (Routing Information Protocol)
:

Uses hop count as its metric. HOP stands for Hand-off protocol.
IP load balancing is enabled by default.
Sends its entire routing table every 30 seconds by default out all RIP enabled interfaces.
It is a Distance Vector routing protocol.
It is a classful routing protocol (route masks are not carried within the updates, consistency of masks is assumed).
RIP uses UDP port number 520, which makes it an Application layer protocol.
Hop count limit of 15, and 16 is infinity.
_____________________________________________________________________________________

IGRP (Interior Gateway Routing Protocol):

Uses a composite metric made up of bandwidth, delay, reliability, load, and MTU (with Bandwidth and delay used as default).
Uses the “fastest” path to the destination.
IP load balancing is enabled by default.
It is a classful routing protocol. Route masks are not carried within the updates, and consistency of masks is assumed.
IGRP uses protocol number 9 at the Transport layer.
Default hop count limit of 100, but configurable to 255.
____________________________________________________________________________________

We explained how "less is more" in the classful/classless routing distinction. With classful routing protocols, summary routes are automatically created at Class A, B, and C network boundaries. So, all router interfaces in the network must have the same subnet mask. If they do not, routing failures may occur. As a result, classful routing protocols may not fully utilize available allocation of host addresses.

Since no subnet mask is sent in routing updates with classful routing protocols, the router does one of the following to determine the network portion of the destination address:

If the routing update information regards the same network number as configured on the receiving interface, the router applies the subnet mask that is configured on the receiving interface.

If the routing update information pertains to a network address that is not the same as the one configured on the receiving interface, the router will apply the default (by class) subnet mask.

Unlike classful routing protocols, classless routing protocols include the routing mask with the route advertisement. With classless routing protocols, summary routes can be manually controlled within the network. Classless routing protocols include OSPF, EIGRP, RIP v2, IS-IS, and BGP.

In a classless routing environment, router interfaces within the same network can have different subnet masks (VLSM can be used). This approach maximizes allocation of available host addresses.

Distance vector routing protocols are referred to as "routing by rumor". They simply relay learned routes out interfaces on a periodic basis to directly connected neighbors. There are two distance vector routing algorithms which distance vector protocols use. The more common of the two is the Bellman-Ford, or B-F, algorithm. EIGRP uses DUAL -- the Diffusing Update Algorithm.

Link state routing is the alternative to distance vector. In a link-state environment, link-state announcements are propagated to all devices in the routing domain. Also, hierarchical design can limit the requirement to notify all devices.


Convergence time is the time it takes for all routers to agree on the network topology after a change such as:

New routes being added
Existing routes changing state

_____________________________________________________________________________________
EIGRP Features and Advantages

EIGRP is an advanced distance vector protocol (Cisco also calls EIGRP a balanced hybrid protocol). EIGRP is guaranteed to be 100% loop free while maintaining a very rapid convergence time. EIGRP offers superior performance over IGRP because of the rapid convergence and the guarantee of a loop-free topology at all times. These improvements are the key to the name “Enhanced” IGRP.

Features and advantages of EIGRP include the following:


Incremental updates
Supports VLSM and discontiguous networks
Classless routing
Compatible with existing IGRP networks
Protocol independent (supports IP, IPX, and AppleTalk)
Uses multicast instead of broadcast
Utilizes link bandwidth and delay
Unequal cost path load balancing
More flexible than OSPF

EIGRP is not an application such as RIP, but is instead a protocol running at the transport layer as protocol number 88 in the IP header. EIGRP uses the services of IP to deliver routing information.

EIGRP supports many different topologies such as Multi-access (Ethernet), Point-to-point (HDLC), and NBMA (Frame relay and ATM)

We also learned that EIGRP automatically summarizes at the classful boundary, and this can be turned off with the command no auto-summary.

EIGRP Operation


The EIGRP terminology is as follows:

Neighbor table:
The is the table of adjacent routers

Topology table:
This is where all learned routes are maintained

Routing table:
This is where the best (successor) routes are stored

Successor: The primary route to a network

Feasible Successor: The backup route to a network

Here are the five generic packet types used in EIGRP:

Hello: Multicasts used for neighbor discovery

Update: Multicasts used for updating neighbors of new routes

Queries: A router sends queries when it does not have a Feasible Successor

Replies: A packet sent in reply to a query

ACK: The ACK is used to acknowledge the above packets

We learned that hellos are sent every 5 seconds on broadcast media, point-to-point links, and multi-point circuits with bandwidth greater than T1. They are sent every 60 seconds on multi-point circuits with bandwidth less than T1

The hold time is, by default, three times the hello interval.

EIGRP Metrics

EIGRP uses the same composite metric as IGRP does to pick the best path, except that it is scaled by 256. The default criteria used are:

Bandwidth: The smallest bandwidth between the source and destination

Delay:
Cumulative interface delay along the path

Additional criteria that can be used is as follows:

Reliability: Worst reliability between source and destination based on keepalives

Load: Worst load on a link between source and destination based on bps

MTU (Maximum Transfer Unit): Smallest MTU in path

•EIGRP uses the following formula to calculate the composite metric:
–CM = 256 x ([k1 x BWmim+ (k2 x Bwmim)/(256 – LOAD) + k3 x DELAYsum] x X)
–Where the following is true:
•BWmim = 107/bandwidth_of_slowest_link
•DELAYsum = SUM(delays_along_the_path)
•X = k5/(reliability + k4) if and only if k1<>1, if k1 = 1 then X = 1
–With the k values set at the default values – you have:
•CM = 256 x (BWmim + DELAYsum)
–NOTE: When you compute by hand – you will get a slightly diff. result than router – this is because of how router handles floating point mathematics
AD (Advertised Distance) is the cost between the next-hop router and the destination.

FD (Feasible Distance)
is the cost to reach the destination from the local router.

The successor (lowest cost route) is the best route to a destination.

The FS (Feasible Successor) is a valid backup route in the event the successor route to the destination fails.

EIGRP utilizes the split horizon feature and that you can use EIGRP to turn off split horizon for NMBA.

EIGRP Configuration

The commands to configure EIGRP are similar to those used for IGRP. We showed you the commands needed to configure a router for EIGRP:

Router(config)# router eigrp

Router(config-router)# network (the interfaces that will participate in EIGRP)

If you are using serial links, remember they default to a bandwidth of 1.544Mbps (T1 speed). You should manually change the bandwidth value of lower value links (56K, 128K, 384K, etc) to properly reflect the clock rate of the interface to the EIGRP routing process:

Router(config-if)# bandwidth

EIGRP will automatically summarize at the classful network boundary. To turn this feature off, issue the following command:

Router(config-router)# no auto-summary

To manually create a summary on an interface issue the following:

Router(config-if)# ip summary-address eigrp

Remember EIGRP will perform equal-cost load balancing on 4 equal-cost links by default, but you can configure it to perform load balancing on a maximum of 6.

To perform unequal-cost load balancing, you must use the variance command:

Router(config-router)# variance

Verifying EIGRP


Here's a review of EIGRP and the commands used to verify and test your EIGRP configuration. Those commands are listed below.

Show commands:

show ip eigrp neighbors: Displays EIGRP neighbor table

show ip eigrp topology: Displays the topology table

show ip route eigrp: Displays the EIGRP routes in the routing table

show ip protocols: Displays current routing protocols running

show ip eigrp traffic: Displays information about EIGRP packets

show ip eigrp events: Displays information about EIGRP events

Debug commands:

debug eigrp packet: Shows EIGRP packets as they are sent and received

debug eigrp neighbor: Shows the EIGRP neighbor process

debug eigrp route: Shows EIGRP changes made to the routing table

debug eigrp summary: Shows a summary of EIGRP activity

debug eigrp events: Shows EIGRP events as they happen

No comments: