• Aucun résultat trouvé

Choosing a Path Selection

Dans le document IP NETWORKS CISCOQoS (Page 89-97)

We begin the process by observing what happens when a new router is added to Company A’s network. In Figure 2.10, we can see that Router E has been added and has a direct connection to Router D.The first step required to converge Router E with the rest of the network and to inform the existing routers of the two new subnets 172.16.2.0 and 172.16.3.0 is to create an adjacency between Routers D and E.

When interface 172.16.2.2 is brought up, Router E unreliably multicastsa hello packet to address 224.0.0.10. Router D is configured for EIGRP and is listening to this multicast address.When Router D receives this hello, it checks the

neighbor table and determines that this is a new neighbor.The hello is parsed to determine if these two neighbors can form an adjacency by ensuring that the IP addresses are in the same subnet and in the same autonomous system, and that the K values listed in the packet match Router D’s K values.When this has been accomplished, Router E is added to the neighbor table.

www.syngress.com

Figure 2.10EIGRP Best Path Selection at Startup

Router B Router C

Router D Company A E IGRP

Router E 172.16.3.0 172.16.2.0

Hello, I am 172.16.2.2/24 Hello, I am 172.16.2.1/24

Router D also unreliably multicasts a hello of its own. Router E performs the same verification and adds Router D to the neighbor table.The routers have now formed an adjacency, and can exchange routing information. EIGRP does not confirm the adjacency between the routers. As soon as a new neighbor is added to the neighbor table, updates are sent. If the receiving router has not yet estab-lished the adjacency, the update is dropped and goes unacknowledged.The update will be retransmitted until the adjacency is formed and the update is acknowledged

Routing information is exchanged using RTP. Immediately upon discovering Router E as a new neighbor, Router D reliably unicastsan update containing information from its topology table.The update packet header contains an INIT flag that has been set to 1 to indicate that it is the first packet in the exchange.

The header also contains a sequence number and an acknowledgment (ACK) number. Since this is the first packet in the exchange, the ACK is set to 0. Each update packet is queued until the update is acknowledged. If Router E fails to acknowledge the packet, it will be retransmitted up to 16 times. If Router E never responds, it will be removed from the neighbor table and the process will begin again as soon as Router D receives another hello from Router E.

When Router E receives a reliably sent update, it must be acknowledged.

Generally, updates are acknowledged with a hello packet. However, if a router has an update packet queued for a neighbor that is awaiting an acknowledgment, it can be inserted into the queued update instead of sending a separate hello acknowledgment. In this instance, Router E sends an update packet with the INIT flag set to 1, establishes a sequence number of its own, and acknowledges the packet from Router D by setting the ACK value equal to the sequence value received from Router D. Figure 2.11 illustrates this process.

Figure 2.11INITs and ACKs

1 Router D Company A E IGRP

Router E 172.16.3.0 172.16.2.0

Update INIT=1, seq=107, ACK=0

Update INIT=1, seq=219, ACK=107 2

Subsequent updates are sent with the INIT flag set to 0, and the sequence and ACK numbers build.When all required information has been exchanged, the final update packets are acknowledged with a hello packet with the sequence number set to 0, and the ACK set to the last sequence value received. Figure 2.12 illustrates this process.

Routers D and E are now adjacent and converged.We need to look at how routing tables are built from the topology table information received from a neighbor.To do this, let’s look at what happens when Router D informs Routers B and C of the new networks that were created when Router E was added to Company A.

From the perspective of Routers B and C, this is merely a topology change.

They are not directly connected to Router E, so adjacencies do not need to be established.The responsibility falls to Router D to update Routers B and C of the change.To do this, Router D parses the neighbor table and creates update packets that are addressed to all neighbors except Router E. Each of these packets is queued to the interface through which each neighbor resides. If there is more than one neighbor through an interface, a packet is queued for each neighbor.

The packets will remain in the queue and retransmitted every RTO period until the packet is acknowledged. In Figure 2.13, Router D has queued and reliably unicastupdate packets to Routers B and C.The amount of information

exchanged is minimal, and only a single update is needed. Routers B and C reply with a hello acknowledging the sequence number, and the queued packets are removed.

Routers B and C add this information to their topology tables and route tables. For the time being, this route is considered the best because they have not learned of any alternatives.

www.syngress.com

Figure 2.12All Required Information Has Been Exchanged

Router D Company A E IGRP

Router E 172.16.3.0 172.16.2.0

Hello seq=0, ACK=108 Update INIT=0, seq=108, ACK=220

On the surface, this appears to be the same as the exchange between Routers D and E; in fact, it is. However, where DUAL begins to take effect is in the fact that Routers B and C will update each other regarding the new topology.

Following the rule of forwarding new topology information to all neighbors except the neighbor from which the information was learned (split horizon), Router C forwards an update to Router B, and vice versa.

When Router C receives the update from Router B, it is disregarded. As stated previously, any advertisements of routes with a higher metric than what is currently being used is considered a loop potential.

NOTE

While I use the term disregarded, the information is not actually thrown away. It is placed in the topology table but is never considered a viable alternative to the current route. To view this information in the topology table, use the command show ip eigrp topology all-links.

Router B receives the update from Router C and is faced with a decision. A determination needs to be made regarding what information should be stored in Figure 2.13Updates Are Sent via Reliable Unicast

Router B Router C

Company A E IGRP

Router E 172.16.3.0

172.16.2.0

Queued: Update for Router B Queued: Update for Router C

Unicast: Update for Router C INIT=1, seq=79, ACK=0 Unicast: Update for Router B

INIT=1, seq=229, ACK=0

1 2

1 2

Hello ACK=229

Hello ACK=79

Router D 56K 1544K

the topology and routing tables.To see how Router B determines this, we need to revisit the process of metric calculation, starting from the source of the orig-inal update, Router E, and moving upstream to Router B.

As you recall from our earlier discussion, a route metric is passed to neighbor routers in the update packet.The metric received from a neighbor is called a vector metric (commonly known as Reported Distance (RD)) and is the metric that the originating router is using as the path cost from itself to the destination and is advertised to upstream routers.The vector metric does not contain any information regarding the link between the two directly connected neighbors.

The vector metric element values are combined with the local interface metric values to generate a composite metric before a decision is made as to what infor-mation is placed in the topology and routing tables.The vector metric is not advertised to neighbors as an integer; it is advertised as a series of six values made up of bandwidth, delay, reliability, load, MTU, and hop count. Figure 2.14 shows the update packet that was sent from Router E to Router D.

Note that BW is the minimum bandwidth along the path to the destination, and DLY is the aggregate delay along the path. Here we are dealing with a

directly connected subnet, so these values are taken from the interface itself. If the vector metric were advertised as an integer, it would be impossible to know the minimum bandwidth to the destination.You will see this graphically demon-strated when we move upstream to router B.

www.syngress.com

Figure 2.14An EIGRP Update Packet

Router D Company A E IGRP

Router E 172.16.3.0

172.16.2.0

10M/ 1000us 10M/ 1000us

Destination 172.16.3.0

DLY=1000 BW=10000

RELY=255

MTU=1500 HOP COUNT=0

LOAD=1 Update

When Router D receives the update, it plugs these values into the metric formula:

Vector Metric=[K1*107/10000+K3*1000/10]*256 Vector Metric=1000+100=1100*256=281600

NOTE

The complete metric formula is:

Metric=[K1*107/BW+K2*(107/BW)/(256-LOAD)+K3*(DLY/10)]*[K5/(RELY+K4)]

Where K1=K3=1, and K2=K4=K5=0, and that sections of the for-mula involving K2, K4, and K5 can be dropped.

This is the advertised cost from Router E. Router D must now combine this metric with its local metric values to calculate the composite metric.The com-posite metric is taken from the same elements that are used in the vector metric, with their values garnered from the downstream interface at Router D.To com-bine the values, Router D simply takes the minimum of either the local interface bandwidth or the bandwidth that was advertised by Router E. In this case, they are the same; therefore, BW remains 10000. Next, it adds the value of delay on the local interface to the value that was advertised by Router E.The result is:

DLY=1000 + 1000=2000

Plugging these values into our formula results in:

Metric= K1*107/10000+K3*2000/10=1000+200=1200*256=307200

This is the final metric that is placed in the topology table used to describe the route. All routing decisions are based on this calculation. If Router D were to receive an update describing this same route from another source, it would per-form this same calculation for that update and compare the two results.The route with the lowest metric value would be considered the optimal route and would be placed in the routing table.

With that said, let’s take a moment to learn some terminology that is at the heart of DUAL.When a route is selected as the optimum route based on having the lowest calculated metric, the downstream neighbor that advertised the path is referred to as the successor.The metric of the path through the successor is known as the feasible distance (FD)to the destination. If the router learns of an alternate

path to the destination that is not superior to the successor, the metric advertised by the downstream neighbor for the new route is checked for its feasibility condi-tion (FC).FC is a condition whereby a reported distance is lower than the feasible distance (RD > FD) to the destination. In other words, the router advertising the new path has a lower cost to the destination than you do, implying that it is closer. If this condition is met, the downstream router advertising the new route is called a feasible successor,and the route is placed in the topology table and can be upgraded to successor if the current successor fails.

To fully understand this let’s move back upstream to Router B which has received an update from both Router D and Router C. In Figure 2.15, you can observe both advertised vector metrics that Router B has received.

Looking at the bandwidth values that are advertised, it becomes clear why the vector metric cannot be passed as an integer. If it were, Router B would have no way of knowing what the minimum bandwidth is along the path from itself to Router C to Router D to Router E.

Let’s look at how Router B calculated the composite metric.

First, the path through Router D:

Advertised Metric= K1*107/10000+K3*2000/10=1000+200=1200*256=307200

www.syngress.com

Figure 2.15The Feasibility Process

Router B Router C

The minimum bandwidth along the path is 56K, and the aggregate delay is 22000us. Plugging these numbers into our formula, we get:

Composite Metric=

K1*107/56+K3*22000/10=178571+2200=180771*256=46277376

Second, the path through Router C:

Advertised Metric=

K1*107/1544+K3*22000/10=6477+2200=8677*256=2221312

The minimum bandwidth is 1544K, and the aggregate delay is 23000us.The result is:

Composite Metric=

K1*107/1544+K3*23000/10=6477+2300=8777*256=2246912

As you can see, the optimum route is the path through Router C.This path is the successor and is placed in the topology table with the complete metric

(2246912) tagged as the feasible distance. Router B now checks the path through Router D for its feasible condition.To meet the feasible condition, the metric advertised by Router D must be lower than the feasible distance; in this case, the advertised distance is 307200, and the feasible distance is 2246912.The feasibility condition is met and the path through Router D is placed in the topology table as a feasible successor that can become the successor if the path through Router C fails.

The following output can been seen in the topology table on Router B dealing with 172.16.3.0.

Router B# show ip eigrp topology

IP-EIGRP Topology Table for process 100

Codes: P - Passive, A - Active, U - Update, Q - Query, R - Reply, r - Reply status

P 172.16.3.0 255.255.255.0, 1 successors, FD is 2246912 via Router C (2246912/2221312), Ethernet0 via Router D (46277376/307200), Serial1

NOTE

In the previous output, on the last two lines the host names of the downstream routers C and D are substituted for their IP addresses. We have not discussed the addressing scheme of the network; therefore, for the sake of clarity, the host names were substituted.

The “P” to the left of 172.16.3.0 indicates that a successor has been found and placed in the routing table, and that there are no calculations ongoing looking for a better route.The next line describes the successor route.The next-hop (see note) neighbor is listed along with the composite metric and then the vector metric advertised by Router C. Finally, the interface through which the neighbor is accessible is listed.

Dans le document IP NETWORKS CISCOQoS (Page 89-97)