Detour Problem in multi-homed Customer Networks NEC labs. America Dirceu Cavendish Kazuo Takagi 1 Assumptions based on current discussions in IEEE802.1AD. • Assumptions: 1. Customer networks support legacy LAN/MAN/WAN specifications only. 2. Customer network spanning trees are established independently of those in the provider network. 3. Customer sites might be multi-homed to the provider network. 4. Others… 2 Network assumptions 2. Establishing independent spanning trees 1. Legacy LAN/MAN/WAN 1. Legacy LAN/MAN/WAN ST for Customer A RB RB Customer A LAN 1 Provider Network RB Customer A LAN 2 RB Root Bridge 3. Multi-homed connections 3 Provider Requirement : Loop prevention • Current view – Recognizing Provider network as “Fat Yellow Cable”. • BPDUs from each customer port are broadcasted to all customer ports attached, transparently. As a result, each customer can construct (a) spanning tree(s) without incurring in loop. Transparent transport of customer BPDUs ST for Customer A Loop prevention network RB Customer A LAN 1 RB Fat Yellow Cable Customer A LAN 2 Provider Network Blocking role ports 4 Customer Traffic Detour • However, in this scheme, multi-home ports to customer sites without a customer root bridge are all kept in forward state”. – Cost of links through the “fat yellow cable” look all the same. Detour Forwarding role ports ST for Customer A Region A C:1 RB C:1 C:10 RB Cost(C): 10 C:1 Detour C:10 Blocking role port C:11 Region B C:11 Fat Yellow Cable Customer A LAN 1 C:11 C:10 Customer A LAN 2 MAC frames between Region A and B have to be exchanged via provider network, even though Region A and B belong to same LAN. 5 Detour Problems • In general, bandwidth and traffic within customer LAN are much larger than those in inter-LANs. – Inefficient bandwidth usage for customers. • Unnecessary customer traffic goes through provider network (waste of customer money) – Performance degradation of customer traffic (delay, loss) due to long path and bandwidth bottleneck. – Congestion spot more likely to appear within the provider network. GbE network Bottleneck 10Mbps Region A 10Mbps Region B Detour access 6 Detour Avoidance • Detour remains as long as: – Multi-homed ports are in forward state. • Objective: to avoid multi-homed ports in forwarding state without new or complicated protocols – Addition of Provider transport cost to Customer BPDU • Port-cost modification in customer BPDUs at provider network. – PEB/PBs calculate and overwrite the cost parameters in the customer BPDUs. 7 Port-cost adjustment • Each PEB/PE calculates and overwrites the costs parameters in Customer BPDUs. – It works for some instances: Forwarding-role ports Forwarding-role port ST for Customer A C:1 RB1 C:10 C:20 RB C:1 C:40 C:30 C:50 C:40 C:40 C:51 C:51 C:30 C:1 C:50 C:51 C:50 C:60 – But not always: provider link cost may be such that path costs through multi-homed interfaces are still the cheapest, resulting in several access ports in forwarding state. Forwarding-role port Forwarding-role ports ST for Customer A C:1 RB1 C:10 C:20 C:1 RB C:30 C:40 C:50 C:30 C:51 C:51 C:1 C:51 C:50 C:40 C:40 C:50 This scheme does NOT guarantee detour avoidance. 8 New Approach • Objective: – To avoid multi-homed ports in forwarding state without complicated protocols: • Approach – Reuse legacy protocols. • Use customer BPDUs (C-BPDUs) – No complicated processes to both provider and customer networks required. • Provider and customers do not adjust the cost parameters in the BPDUs. • Customers do not need to be aware of provider network points of attachment at all. – No configuration procedure needed. 9 Possible Solution: Single port selection via customer BPDUs (1) • Each PEB decides its port-role autonomously, via C-BPDUs sent from both Provider and customer sides. 1. Root bridge IDs in C-BPDUs are used as LAN IDs. 2. Each PEB broadcasts C-BPDU to all the PEBs transparently, via the provider spanning tree used for that customer. 3. Each PEB decides its port-role by comparisons of parameters, received from C-BPDU with the same root bridge ID as the one PEB attaches to. • Parameters: cost, MAC addresses, …. 4. Each PEB discards C-BPDUs received from provider bridges. Root:RB1 RB1 ST for Customer A RB For LAN 2 RB2 Customer A LAN 2 Customer A LAN 1 C-BPDU flows For LAN 1 Root:RB2 Provider Network C-BPDU processing C-BPDU processing 10 Proposal: One port selection with customer BPDUs (2) • Each PEB decides its port-role autonomously, referring C-BPDUs sent from both of Provider and customer sides. 1. Root bridge IDs in C-BPDUs are used as LAN IDs. 2. Each PEB broadcasts C-BPDU to all the PEBs transparently, via the customer spanning tree. 3. Each PEB decides its port-role by comparisons of parameters, received from C-BPDU with the same root bridge ID as the one PEB attaches to. • Parameters: cost, MAC addresses, …. 4. Each PEB discards the C-BPDUs received from provider site. Root:RB1 RB1 ST for Customer A RB For LAN 2 RB2 Customer A LAN 2 Customer A LAN 1 C-BPDU flows For LAN 1 Root:RB2 Provider Network C-BPDU processing C-BPDU broadcast to PEBs C-BPDU broadcast to PEBs C-BPDU from LAN2 C-BPDU from LAN1 C-BPDU processing 11 Proposal: One port selection with customer BPDUs (3) • Each PEB decides its port-role autonomously, referring C-BPDUs sent from both of Provider and customer sides. 1. Root bridge IDs in C-BPDUs are used as LAN IDs. 2. Each PEB broadcasts C-BPDU to all the PEBs transparently, via the customer spanning tree. 3. Each PEB decides its port-role by comparisons of parameters, received from C-BPDU with the same root bridge ID as the one PEB attaches to. • Parameters: cost, MAC addresses, …. 4. Each PEB discards the C-BPDUs received from provider site. Myport role role is This ST for Customer A isforwarding. forwarding. Root:RB1 RB1 Root:RB2 RB2 RB Myport rolerole is This Blocking. is Blocking. X X Customer A LAN 2 Customer A LAN 1 C-BPDU flows For LAN 1 For LAN 2 Provider Network C-BPDU processing C-BPDU broadcast to PEBs C-BPDU broadcast to PEBs C-BPDU processing 12 Proposal: One port selection with customer BPDUs (4) • Each PEB decides its port-role autonomously, referring C-BPDUs sent from both of Provider and customer sides. 1. Root bridge IDs in C-BPDUs are used as LAN IDs. 2. Each PEB broadcasts C-BPDU to all the PEBs transparently, via the customer spanning tree. 3. Each PEB decides its port-role by comparisons of parameters, received from CBPDU with the same root bridge ID as the one PEB attaches to. • Parameters: cost, MAC addresses, …. 4. Each PEB discards C-BPDUs received from provider site – no BPDU tunelling. Root:RB1 Root:RB2 ST for Customer A RB1 RB2 RB X X Customer A LAN 2 Customer A LAN 1 C-BPDU flows For LAN 1 For LAN 2 Provider Network C-BPDU processing Discarding C-BPDU broadcast to PEBs C-BPDU broadcast to PEBs Discarding C-BPDU processing 13 Customer/Provider Network 2. Establishing independent spanning trees 1. Legacy LAN/MAN/WAN 1. Legacy LAN/MAN/WAN ST for Customer A RB RB RB Customer A LAN 1 Provider Network RB Customer A LAN 2 RB Root Bridge 3. Multi-homed connections 14 This scheme merit: Easy bridge role change(1) Divide one LAN into two LANs STEP 1 • • When a failure is occurred, TCN is sent within LAN 2. The attached PEB broadcasts information with TCN to unlearn. • • C-TCN Forwarding or blocking Failure Customer A LAN 2 ST for Customer A RB ID in C-BPDU is RB2 RB X RB2 ST for LAN 3 X RB ID in C-BPDU is RB3 STEP 3 PEBs decide the bridge role. ST for LAN 3 X The PEB receiving TCN from LAN is in blocking role, in order to avoid loop. New RB comes up in LAN. PEBs broadcast information with attached RB ID. • RB2 RB STEP 2 • • ST for Customer A Failure RB3 New root bridge! ST for Customer A RB RB2 ST for LAN 3 Failure RB3 Forwarding role. 15 This scheme merit: Easy bridge role change(2) Connects two customer LANs STEP 1 ST for Customer A Back-to-Back • • • • • The PEB receiving TCN from LAN is in blocking role, in order to avoid loop. TCN RB3 STEP 2 ST for Customer A RB ID in C-BPDU is RB2 RB X RB2 X Only one RB comes up in LAN. PEBs broadcast information with attached RB ID. RB ID in C-BPDU is RB2 STEP 3 • RB2 RB When two customer LANs are connected back-to-back, TCN is sent within LANs. The attached PEB broadcasts information with TCN to unlearn. ST for Customer A Forwarding role. RB2 RB PEBs decide the bridge role. • Forwarding or blocking X 16 Merits of the proposal • Efficient bandwidth usage – Avoidance of detour • Automatic port role decision without prenotification of LAN separation and integration. • Not complicated scheme. – Rely on C-BPDUs. • C-BPDU broadcast has been already discussed for unlearning. 17 Proposal Requirements • Each site is required to have a root bridge. – This might avoid customers to make a single spanning tree across the provider network. • C-BPDUs are required to be broadcasted to all the PEBs on the provider spanning tree for the customers. • Each PEB is required to discard the C-BPDUs received from Provider side. 18 Summary • The concept of “Fat Yellow Cable” is good for avoidance of loop in Provider bridge. • However, this has a detour access: – In the sites without a root bridge, however, frames might be transported via provider network, even when transported to the terminal in the same LAN. • This is because all or several attached ports probably has the same cost value and they all are in forwarding role. • Proposal: – One port selection via customer BPDUs • Each PEB decides its port-role autonomously, based on C-BPDUs sent from both of Provider and customer sides. 19