Enhanced Interior Gateway Protocol OSPF EIGRP Supports CIDR and VLSM, rapid convergence, partial updates, neighbour discovery Supports CIDR and VLSM, rapid convergence, partial updates, neighbour discovery Administrator can define route summarization Automatic route-summarization and user defined route summaries Open standard; multivendor support Proprietary; Cisco routers only Scalable; administratively defined “areas” provide manageable hierarchy Scalable, but no hierarchical design Difficult to implement Easy to implement Equal-cost load balancing Unequal-cost load balancing Metric = 256*([K1*Bw + K2*Bw/(256-Load) + K3*Delay]*[K5/(Reliability + K4)]). Default constant values:- K1=1, K2=0, K3=1, K4=0, K5=0 Metric = [K1 x bandwidth (min) + K3 x delay (cumulative)] The default K values can be changed with the EIGRP router command: R2(config-router)# metric weights tos k1 k2 k3 k4 k5 172.16.2.0/24 ISP Loopback 10.1.1.1/30 .1 R2 172.16.3.0/24 S0/0/0 Fa0/0 172.16.1.0/24 .1 S0/0/0 DCE .1 R1 .2 64 kbps S0/0/1 .5 .9 S0/0/1 DCE 1024 kbps 1544 kbps 192.168.10.4/30 192.168.10.8/30 S0/0/1 .10 S0/0/0 DCE .6 R3 Bandwidth = (10,000,000 / BW in kbps) x 256 •R2 Slowest Interface = S0/0/1 link at 1024kbps •10,000,000 / 1024 = 9765.625 •Round Down = 9765 •9765 x 256 =2,499,840 Fa0/0 .1 192.168.1.0/24 172.16.2.0/24 ISP Loopback 10.1.1.1/30 .1 R2 172.16.3.0/24 S0/0/0 Fa0/0 172.16.1.0/24 .1 S0/0/0 DCE .1 .2 64 kbps S0/0/1 R1 .5 .9 S0/0/1 DCE 1024 kbps 1544 kbps 192.168.10.4/30 192.168.10.8/30 S0/0/1 .10 S0/0/0 DCE .6 R3 Fa0/0 .1 192.168.1.0/24 Delay = (Sum of delay / 10) x 256 •Sum = 100 + 20,000 = 20,100uS •Sum /10 = 20,100 / 10 = 2,010 •2,010 x 256 = 514,560 5 172.16.2.0/24 ISP Loopback 10.1.1.1/30 .1 R2 172.16.3.0/24 S0/0/0 Fa0/0 172.16.1.0/24 .1 S0/0/0 DCE .1 R1 .2 64 kbps S0/0/1 .5 .9 S0/0/1 DCE 1024 kbps 1544 kbps 192.168.10.4/30 192.168.10.8/30 S0/0/1 .10 S0/0/0 DCE .6 R3 Calculate the metric to reach destination 192.168.1.0/24 from R1 Metric = [K1 x bandwidth (min) + K3 x delay (cumulative)] Fa0/0 .1 192.168.1.0/24 •The feasibility condition (FC) is met when a neighbor's reported distance (RD) to a network (192.168.10.0/24) is less than the local router's feasible distance (FD) to the same destination network. 10 R2 15 R1 10 Router RD/AD FD R2 10 20 R3 10 25 R4 30 45 FC = RD<FD 10 R3 R5 192.168.10.0/24 15 30 R4 •Successor = R2 (FD=20) •Feasible Successor = R3 (10<20) •If the Successor route fails, R1 will immediately enter the feasible successor into the routing table. •R1 will update it’s neighbours about the topology change. 10 Update R2 10 Router RD/AD FD R2 10 20 R3 10 25 R4 30 45 ACK 15 R1 FC = RD<FD 10 R3 R5 192.168.10.0/24 Update 15 30 R4 ACK •Successor = R3 (FD=25) •No Feasible Successor = R3 (30>25) •If the new successor route fails, R1 no longer has a feasible successor, so it enters the Active state. •R1 will now query it’s neighbours for a route to network 192.168.10.0/24. R2 15 R1 10 Router RD/AD FD R2 10 20 R3 10 25 R4 30 45 FC = RD<FD 10 R3 R5 192.168.10.0/24 Query 15 30 R4 Reply •Successor = R4 (FD=45) •No Feasible Successor Equal-cost load balancing is the ability of a router to distribute traffic over all its network ports that are the same metric from the destination address. EIGRP automatically load balances across equal cost paths. Load balancing increases the use of network segments and increases effective network bandwidth. Cisco IOS software by default will install up to four equal-cost paths in the routing table for most routing protocols. The maximum-paths command in can be used to allow up to six equal-cost paths. Equal Cost Load Balancing •EIGRP can also balance traffic across multiple routes that have different metrics, which is called unequal-cost load balancing. •The degree to which EIGRP performs load balancing is controlled with the variance command 10 R2 15 R1 10 Router RD/AD FD R2 10 20 R3 10 25 R4 30 45 FC = RD<FD 10 R3 R5 192.168.10.0/24 15 30 R4 R1(config)#router eigrp 1 R1(config-router)#variance 2 How will R1 route packets to R2’s loopback interface? Issues if R1 uses both direct path and and indirect path using R3? Routing Loops Unequal cost paths The spoke routers are remotes sites, and they have two connections for redundancy, not so they can transit traffic between Router A and Router B. 10.1.1.0/24 Hub Network A B Router B Router A Router A should never use the spokes as a path to anything reachable through Router B, so there’s no reason to learn about, or query for, routes through these spokes. Spoke 4 Spoke 3 Spoke 2 Spoke 1 Not Designed to Transit Traffic The EIGRP Stub Routing feature: ◦ Improves network stability ◦ Reduces resource utilization and ◦ Simplifies remote router (spoke) configuration Stub routing is commonly used in hub-and-spoke topology. Stub router sends a special peer information packet to all neighboring routers to report its status as a stub router. Any neighbor that receives a packet informing it of the stub status does not query the stub router for any routes. 10.1.1.0/24 To inform Routers A & B B that the paths through the spokes should not be used for transit traffic, the spoke routers can be configured as stubs: Hub Network Reply Query B A Router A Router B Spoke 4 Spoke 3 Spoke1(config)router eigrp 100 Spoke1(config-router)#eigrp stub Spoke 2 Spoke 1 Can you identify problems with reudundancy in the network Several solutions to problem in the last slide: Add a redundant Ethernet link between routers A and B to contain the backbone traffic to the hub site Use some level of route summarization to limit the extents of the EIGRP QUERY mechanism. Configure a distribute-list to limit the networks advertised by the spoke routers. Best Solution: is to control traffic flows and limit query depth using EIGRP Stub Router functionality Eigrp stub configuration need only be entered on the spoke routers. Router(config-router)#eigrp stub [receive-only|connected|static|summary] receive-only: Prevents the stub from sending any type of route. connected: Permits stub to send connected routes (may still need to redistribute). static: Permits stub to send static routes (must still redistribute). summary: Permits stub to send summary routes. Default is connected and summary. Update: C- 2.0.0.0/8 C –2.0.0.0/8 Subnet 2.1.1.0/24 C – 2.0.0.0/8 Subnet 2.2.2.0/24 •EIGRP automatically summarises routes at the classful boundary—the boundary where the network address ends as defined by class-based addressing. •In most cases, auto summarisation is beneficial, because it keeps the routing tables as compact as possible. •Auto summarisation causes problems when two subnets are discontiguous. EIGRP automatically includes a null0 summary route as a child route whenever both of following conditions exist: 1. There is at least one subnet that was learned via EIGRP. 2. Automatic summarisation is enabled. •EIGRP uses the Null0 interface to discard any packets that match the parent route but do not match any of the child routes. •Even with classless routing behavior configured, where the route lookup process will check for supernets and default routes, EIGRP will use the Null0 summary route and discard the packet because this route will match any packets of the parent that do not have a child route. 172.16.2.0/24 ISP Loopback 10.1.1.1/30 .1 R2 172.16.3.0/24 S0/0/0 Fa0/0 172.16.1.0/24 .1 S0/0/0 DCE .1 R1 .2 64 kbps S0/0/1 .5 .9 S0/0/1 DCE 1024 kbps 1544 kbps 192.168.10.4/30 192.168.10.8/30 192.168.1.0/24 S0/0/1 .10 S0/0/0 DCE .6 R3 Fa0/0 .1 Lo2 192.168.2.1/24 Lo2 192.168.3.1/24 By default, EIGRP may use up to 50 % of the bandwidth of an interface or sub-interface for routing traffic. EIGRP uses the bandwidth specified with the bandwidth command, or the default bandwidth of the link if none is configured, when calculating how much bandwidth to use. EIGRP bandwidth usage can be adjusted as follows: R1(config)#interface s0/0/0 R1(config-if)#bandwidth 128 R1(config-if)#ip bandwidth-percentage eigrp 1 25 AS % Simple password authentication: MD5 authentication ◦ Router sends packet and key. ◦ Neighbor checks if received key matches its key. ◦ Not secure. ◦ Configure a “key” (password) and key-id; router generates a message digest, or hash, of the key, key-id and message. ◦ Message digest is sent with packet; key is not sent. ◦ Secure. R1(config)#interface Serial0/0/1 R1(config-if)#bandwidth 64 R1(config-if)# ip address 192.168.1.101 255.255.255.224 R1(config-if)# ip authentication mode eigrp 100 md5 R1(config-if)# ip authentication key-chain eigrp 100 R1chain R1(config)# key chain R1chain R1(config-keychain)#key 1 R1(config-keychain-key)#key-string firstkey R1(config-keychain-key)# accept-lifetime 04:00:00 Jan 1 2006 infinite R1(config-keychain-key)# send-lifetime 04:00:00 Jan 1 2006 04:30:00 Jan 1 2006 R1(config-keychain)# key 2 R1(config-keychain-key)#key-string secondkey R1(config-keychain-key)#accept-lifetime 04:00:00 Jan 1 2006 infinite R1(config-keychain-key)#send-lifetime 04:29:00 Jan 1 2006 infinite