Load SharingWhen more than one path exists between the source and destination, load sharing often becomes an important factor for better bandwidth utilization. You can deploy load sharing in many different ways. Load sharing is sometimes completely transparent to pseudowire traffic if it only involves core routers in the network. The case studies in this section focus on the load-sharing scenarios that involve provider edge (PE) routers performing pseudogwire emulation over MPLS. More precisely, an ingress PE router sees more than one path to reach the egress PE router for pseudowire traffic.Service providers normally deploy standard-based routing protocols in the core networks, such as Open Shortest Path First (OSPF) and Intermediate System-to-Intermediate System (IS-IS), which support Equal-Cost Multipath (ECMP) load sharing. With these routing protocols, only routes that have the least cost to a given destination are shown in the forwarding table. If multiple equal-cost routes go to the same destination, all of them are installed in the forwarding table. Depending on the traffic type and forwarding configuration, packets with the same destination are distributed across these paths.NoteThe total number of equal-cost routes available depends on with Cisco IOS releases and hardware platform specifications.The load-sharing scheme used in AToM ensures that packets being transmitted over a given pseudowire follow the same path, and packets of different pseudowires are spread across all available equal-cost paths.The first aspect of this scheme is to minimize the possibility of out-of-order packets because of load sharing. Some Layer 2 protocols or higher layer protocols do not function or their performance is drastically penalized when packets are delivered out of order. Packets that are transmitted over a single pseudowire are generally considered part of the same data flow, which is likely of the same protocol or application. Putting packets of the same flow through the same path reduces the likelihood that they will be misordered in the core network.The second aspect of this scheme mandates that the load-sharing scheme used in AToM utilizes a hashing algorithm to assign pseudowires to equal-cost paths. By default, the remote virtual circuit (VC) label of a pseudowire acts as the hash key to calculate the outgoing path. Because of this, pseudowire packets that have the same remote VC label are sent through the same path. Again, the rationale behind this is to keep these packets in the same data flow and to minimize out-of-order packets.Figure 9-1 shows a network topology with multiple paths between PE1 and PE2. Suppose that the core network is configured with OSPF as the Interior Gateway Protocol (IGP). Figure 9-1. Multipath Network Topology[View full size image] ![]() Example 9-1. Initial Pseudowire ConfigurationThe initial configuration on PE2 is shown in Example 9-2. Example 9-2. PE2 Initial Pseudowire ConfigurationThe following case study sections discuss how PE routers make path selection decisions for pseudowire traffic when these types of forwarding paths are present:Case Study 9-1: Unequal-Cost MultipathCase Study 9-2: Equal-Cost Multipath Case Study 9-1: Unequal-Cost MultipathWith open standard IGP routing protocols such as OSPF and IS-IS, only routes that have the lowest cost are installed in the forwarding table. Therefore, for cases in which multiple paths point to the same destinations but each has a different cost, only one path is selected for packet forwarding. In Example 9-3, PE1 and PE2 are connected through P1 using T1 links and through P2 and P3 using Ethernet links. By default, the OSPF cost is 64 for T1 links and 10 for Ethernet links. Example 9-3. SPF Costs on PE1 InterfacesTo reach the loopback interface on PE1 and PE2, you must take the cost of the loopback interface into account, as shown in Example 9-4. Example 9-4. SPF Cost on PE1 Loopback InterfaceThe cost for PE1 to go through P1 to reach PE2 is 64 + 64 + 1 = 129, whereas the cost to go through P2 and P3 is 10 + 10 + 10 + 1 = 31. The least-cost path to the destination 10.1.1.2 is through P2 and P3, thus chosen by the routing protocol to forward data packets. You can observe this through the show command in Example 9-5. Example 9-5. SPF Cost to PE2 Loopback InterfaceBecause Ethernet1/0 is the only outgoing interface that the routing protocol chooses to reach the destination, all AToM pseudowires on PE1 take that interface (see Example 9-6). Example 9-6. A Single Lowest-Cost Path Selected on PE1PE2 has a similar result to PE1, as shown in Example 9-7. Example 9-7. A Single Lowest-Cost Path Selected on PE2
Case Study 9-2: Equal-Cost MultipathIn the previous case study, all AToM pseudowires took a single outgoing path when all feasible outgoing paths had different costs. Example 9-8 uses the same topology and configuration, but the cost of the link between P2 and P3 is increased so that the overall cost for the path going through P2 and P3 becomes equal to the one through P1. As a result, the routing table on PE1 now shows it has two equal-cost paths to the destination. Example 9-8. Two Equal-Cost Paths to PE2 Loopback InterfaceIn Example 9-9, you see that PE2 has a similar result to PE1. Example 9-9. Two Equal-Cost Paths to PE1 Loopback InterfaceWhen equal-cost paths are available, AToM attempts to distribute pseudowires among them. On PE1 and PE2, the show mpls l2transport summary command demonstrates that AToM pseudowires are assigned to different output interfaces, as shown in Example 9-10. Example 9-10. Pseudowires Load Share Across Equal-Cost PathsNotice that PE1 and PE2 come up with different ideas for how to load share the pseudowires. For all three provisioned pseudowires, PE1 distributes two of them to the serial interface, which takes P1 as the next-hop router towards PE2; PE2 distributes two of the pseudowires to the Ethernet interface, which takes P3 as the next-hop router toward PE1. This means that one of the pseudowires selects the path through P1 in the direction from PE1 to PE2, but it takes the path through P3 and P2 in the return direction from PE2 to PE1. For this particular pseudowire, PE1 transmits its packets to PE2 through P1, and PE2 transmits its packets to PE1 through P3 and P2.This is not really a problem or mistake. Packets of this pseudowire being transmitted in each direction still follow the same path. IP/MPLS traffic is generally considered unidirectional, and the routing protocol is free to choose different equal-cost paths for packets sent in different directions. It is normal for the core network to route packets under the default hop-by-hop and best-effort forwarding scheme. On the other hand, if the core network engages in traffic engineering techniques and prefers explicit paths for pseudowire traffic, you need to associate AToM pseudowires with these explicit paths. The next section discusses preferred paths in more detail.Under the default forwarding scheme, the show mpls l2transport vc detail command reveals how the underlying load-sharing algorithm works when equal-cost paths are present (see Example 9-11). Example 9-11. Load Sharing Selects Different Output Interfaces for PseudowiresOn PE1, AToM pseudowires of VC ID 100, 200, and 300 have a remote VC label of 22, 25, and 26 respectively. Because two equal-cost paths are available, the algorithm uses the remote VC labels, such as the hash key, to calculate an index value for each pseudowire. Then the index value maps to a hash bucket that corresponds to one of the two output paths. The hash buckets for pseudowires of VC ID 100 and 300 map to the same output interface; therefore, they take the same output path. |