Patent Publication Number: US-8971190-B2

Title: Methods and devices for implementing shortest path bridging MAC mode support over a virtual private LAN service network

Description:
TECHNICAL FIELD 
     The present invention relates generally to communication across a network, and more particularly, to methods and devices for implementing shortest path bridging MAC mode support over a virtual private LAN service network. 
     BACKGROUND 
     The IEEE 802.1aq standard (802.1aq), was published in 2012 and defines a routing solution for Ethernet that replaces prior routing solutions including Spanning Tree Protocols. 802.1aq is also known as Shortest Path Bridging or SPB. 802.1aq enables the creation of large numbers of logical Ethernet networks on native Ethernet infrastructures. 802.1aq employs a link state protocol (i.e., Intermediate System to Intermediate System (IS-IS)) to advertise network topology and logical network membership of the nodes in the network. The link state information is used to calculate shortest path trees from all bridges in the SPB region. The computations are done in an independent and distributed manner with each node generating its own forwarding tables to implement its part in SPB region-wide forwarding. 
     Data is encapsulated at the edge nodes of the networks implementing 802.1aq. This encapsulation can be in 802.1ah or tagged 802.1Q/p802.1ad frames. These frames are transported only to other members of the respective logical network. Unicast and multicast routing are also supported by 802.1aq. All such routing is done via symmetric shortest paths. Multiple equal cost shortest paths are supported. Implementation of 802.1aq in a network simplifies the creation and configuration of the various types of supported networks, including provider networks, enterprise networks and cloud computing networks. 802.1aq also increases bandwidth and reliability by improved use of the network mesh topology. By unblocking all paths, greater utilization can be obtained through the use of multiple equal cost paths. Improved convergence times and larger topologies can also be supported due to the simplification of synchronization of the view of the network across all nodes inherent to link state routing. 
     Virtual Private LAN Service (VPLS) is an approach to effecting Ethernet Virtual Private Networks (VPNs) over Multi-Protocol Label Switching (MPLS) networks. However, VPLS as currently specified does not provide for multiple unblocked attachment circuits for supporting SPB. 
     Prior VPLS implementations that support 802.1ah have typically only collocated the I-component with the PE and, as such, do not have a PBBN attached to any PE. Consequently, there is no means of supporting a backbone Ethernet networking component. Thus, in these prior systems there are no B-VIDs, and that function is null. There is no requirement for symmetric and congruent multicast trees, and VPLS itself is not necessarily congruent across an MPLS network. Therefore, in previous networks the unit of configured load spreading is the I-SID. VPLS supports “active-standby” multi-chassis uplinks (a.k.a., Multi-chassis Link Aggregation Group (MC-LAG)). Accordingly, there is a need to implement shortest path bridging support over a virtual private LAN service network to take advantage of SPB features with VPLS. 
     SUMMARY 
     Particular embodiments of the present invention are directed to methods and devices for implementing shortest path bridging MAC mode support over a virtual private LAN service network. 
     According to certain embodiments, a method is provided for implementing Shortest Path Bridging (SPB) over a Virtual Private LAN Service (VPLS) network. The method includes receiving, by a provider edge (PE) switch, Intermediate System-Intermediate System (IS-IS) protocol data unit (PDU) information. The method further includes determining, from the received IS-IS PDU information, whether a Designated Forwarder (DF) configuration, which may be for a given Backbone-Virtual Local Area Network Identifier (B-VID), for the PE switch needs to be changed and, if the DF configuration needs to be changed, the method further includes determining whether the PE switch remains a DF for one or more B-VIDs. If the PE switch is no longer a DF for one or more B-VIDs, the method further includes removing all local DF associated information from each pseudowire (PW) adjacency&#39;s LDP database associated with the PE switch, and removing, from a local IS-IS database, all DF associated remote LDP information for the set of remote PBBNs associated with the PE switch. The method also includes determining whether the PE switch has become a DF for one or more of the B-VIDs and, if the PE switch has become a DF for one or more of the B-VIDs, the method further includes adding, from the IS-IS database, all local DF information for the PE switch to the one or more LDP databases, and adding, from the one or more LDB databases, all DF associated remote Shortest Path Bridging MAC Mode (SPBM) information for the PE switch to the IS-IS database. 
     In accordance with certain embodiments, the method further includes determining whether the PE switch is a DF for any B-VID. If the PE switch is a DF for any B-VID, the method further including determining whether the received IS-IS PDU information includes a new Shortest Path Bridging MAC Mode (SPBM) service identifier or changed unicast address sub-TLV information. If the IS-IS PDU information includes a new SPBM service identifier or changed unicast address sub-TLV information, the method further includes adding, from the IS-IS database to the one or more LDP databases, the new SPBM service identifier or changed unicast address sub-TLV information. 
     Particular embodiments further provide a multiprotocol label switching (MPLS) provider edge (PE) switch for implementing Shortest Path Bridging (SPB) over a Virtual Private LAN Service (VPLS) network. The PE switch includes a processor; a memory coupled to the processor; and a transceiver coupled to the processor. The processor is configured to receive Intermediate System-Intermediate System (IS-IS) protocol data unit (PDU) information, including an IS-IS Type Length Value (TLV) and to determine, from the received IS-IS PDU information, whether a Designated Forwarder (DF) configuration, which may be for a given Backbone-Virtual Local Area Network Identifier (B-VID), for the PE switch needs to be changed. If the DF configuration needs to be changed, the processor is further configured to determine whether the PE switch remains a DF for one or more B-VIDs. If the PE switch is no longer a DF for one or more B-VIDs, the processor is further configured to remove all local DF associated information from each pseudowire (PW) adjacency&#39;s LDP database associated with the PE switch, and to remove, from a local IS-IS database, all DF associated remote LDP information for the set of remote PBBNs associated with the PE switch. The processor is also configured to determine whether the PE switch has become a DF for one or more of the B-VIDs and, if the PE switch has become a DF for one or more of the B-VIDs, the processor is further configured to add, from the IS-IS database, all local DF information for the PE switch to the one or more LDP databases, and to add, from the one or more LDB databases, all DF associated remote Shortest Path Bridging MAC Mode (SPBM) information for the PE to the IS-IS database. 
     In certain embodiments, the processor is further configured to receive LDP information from a peer node and to determine whether the received LDP information includes new information regarding PW adjacencies. If the LDP information includes new information regarding PW adjacencies, the processor is further configured to determine whether the PE switch is a DF for an I-Component Service Identifier (I-SID) associated with the received LDP information. If the PE switch is a DF for an I-SID associated with the received LDP information, the processor is further configured to add the received SPB information associated with the PW adjacency to the IS-IS database. 
    
    
     
       BRIEF DESCRIPTION OF THE DRAWINGS 
       The accompanying drawings, which are incorporated herein and form part of the specification, illustrate various embodiments of the present disclosure and, together with the description, further serve to explain the principles of the disclosure and to enable a person skilled in the pertinent art to make and use the embodiments disclosed herein. In the drawings, like reference numbers indicate identical or functionally similar elements. 
         FIG. 1  illustrates an architecture of a communication system for implementing shortest path bridging over a virtual private LAN service network. 
         FIG. 2  is a block diagram of a provider edge switch, as used in the system of  FIG. 1 , in accordance with exemplary embodiments of the present invention. 
         FIG. 3  is a block diagram illustrating the processing of data frames as they are translated from a Provider Backbone Bridged Network (PBBN) to a Virtual Private LAN Service (VPLS) network and from a VPLS network to a PBBN. 
         FIG. 4  is a block diagram of a provider edge (PE) switch, as used in the system of  FIG. 1 , in accordance with exemplary embodiments of the present invention. 
         FIG. 5  is a flowchart illustrating the steps performed by a PE switch in methods for implementing shortest path bridging over a VPLS network in accordance with exemplary embodiments of the present invention. 
         FIG. 6  is a flowchart illustrating the steps performed by a PE switch for updating Pseudowire (PW) adjacencies in accordance with exemplary embodiments of the present invention. 
     
    
    
     DETAILED DESCRIPTION 
     Particular embodiments are directed to methods and devices for implementing shortest path bridging support over a virtual private LAN service network. 
     In the following description, numerous specific details are set forth. However, it is understood that embodiments of the invention may be practiced without these specific details. In other instances, well-known circuits, structures and techniques have not been shown in detail in order to not obscure the understanding of this description. It will be appreciated, however, by one skilled in the art, that the invention may be practiced without such specific details. Those of ordinary skill in the art, with the included descriptions, will be able to implement appropriate functionality without undue experimentation. 
     The operations of the flow diagrams are described with reference to the exemplary structural embodiments illustrated in the figures. However, it should be understood that the operations of the flow diagrams can be performed by structural embodiments of the invention other than those discussed with reference to figures, and the embodiments discussed with reference to figures can perform operations different than those discussed with reference to the flow diagrams. 
     As used herein, a network element (e.g., a router, switch, bridge, etc.) is a device, including hardware and software, that communicatively interconnects other equipment on the network (e.g., other network elements, end stations, etc.). Some network elements are “multiple services network elements” that provide support for multiple networking functions (e.g., routing, bridging, switching, Layer 2 aggregation, session border control, multicasting, and/or subscriber management), and/or provide support for multiple application services (e.g., data, voice, and video). Subscriber, or user, end stations (e.g., servers, workstations, laptops, palm tops, mobile phones, smart phones, multimedia phones, Voice Over Internet Protocol (VOIP) phones, portable media players, GPS units, gaming systems, set-top boxes (STBs), etc.) access content/services provided over the Internet and/or content/services provided on virtual private networks (VPNs) overlaid on the Internet. The content and/or services are typically provided by one or more end stations (e.g., server end stations) belonging to a service or content provider or end stations participating in a peer to peer service; and may include public web pages (free content, store fronts, search services, etc.), private web pages (e.g., username/password accessed web pages providing email services, etc.), corporate networks over VPNs, Internet Protocol Television (IPTV), etc. Typically, subscriber end stations are coupled (e.g., through customer premise equipment coupled to an access network (wired or wirelessly)) to edge network elements, which are coupled (e.g., through one or more core network elements to other edge network elements) to other end stations (e.g., server end stations). 
     Referring now to  FIG. 1 , an architecture of a communication system  100  for implementing shortest patch bridging over a virtual private LAN service network in accordance with exemplary embodiments of the present invention, is illustrated. The network  100  can include any number of customer edge equipment (CE) nodes  102 ,  110 ,  114  that are devices that connect a local area network (LAN) or similar set of customer devices with the SPBM-PBBN  104 . The CE  102 ,  110 ,  114  can be any type of networking router, switch, bridge or similar device for interconnecting networks. 
     The SPBM-PBBN  104 ,  112  is a set of network devices such as Ethernet switches forming a provider backbone network that implements shortest path bridging MAC mode. This network  104 ,  112  can be controlled by entities such as internet service providers and similar entities. CEs  102  subtending from SPBM-PBBN- 1   104  can be connected to other CDs  114  via any number of other SPBM-PBBNs (such as SPBM-PBBN- 2   112 ), or CEs  110  subtending other than a local SPBM-PBBN via a Backbone Edge Bridge (BEB-PE)  106 C, or similar networks or devices over an IP/MPLS  108  network or similar wide area network. These networks  104 ,  108 ,  112  can interface through any number of PEs  106 A-D. The modification of the PE  106 A-D to support 802.1aq over VPLS within the SPBM-PBBN network is described further below. The illustrated network  100  of  FIG. 1  is simplified for sake of clarity. One skilled in the art would understand that the network  100  can have any number of CEs  102 ,  110 ,  114 , PBBNs  104 ,  112 , and PEs  1106 -D, where any given PBBN  104 ,  112  can connect with the IP/MPLS network  108  through any number of PEs  106 . 
     Embodiments of the present invention incorporate control plane interworking in the PE  106  to map IS-IS Shortest Path Bridging (ISIS-SPB) information elements into VPLS information encoded and communicated via LDP and vice versa for directing data packets across the network according to SPB. Associated with this process are procedures for configuring the forwarding operations of the PE  106  such that an arbitrary number of VPLS subtending SPBM-PBBNs  104 ,  112  may be interconnected without any topological or multi-pathing dependencies. These embodiments also permit a co-located BEB and PE (PBBN-PE)  106 C to seamlessly communicate with the SPBM-PBBNs  104 ,  112 . These embodiments can be extended to support the future 802.1Qbp standard, permitting seamless interworking between 802.1ah, 802.1aq, and 802.1Qbp as well as supporting subtending 802.1ad-based PBBNs. 
     The combination of the SPBM-PBBN facing interfaces or virtualized BEB instances bound to the mesh of PWs in the MPLS network set up via the Label Distribution Protocol (LDP) inherently identifies the set of SPBM-PBBNs  104 ,  112  and BEB-PEs  106 C that are allowed to communicate. A LDP database acts as a common repository of the I-SID attachment points for the set of subtending PEs  106 /PBBNs  104 ,  112 , i.e., the set of PBBN-PEs  106  and the SPBM-PBBNs that are interconnected via VPLS. These attachment points are in the form of B-MAC address, I-SIDs (with Tx-Rx-attribute tuples) stored in the local LDP database of the PE  106 . The Control Plane (CP) interworking function filters the leaking of I-SID information in the LDP database into the local PBBN-PE implementation or the local ISIS-SPB routing instance within each PBBN  104 ,  112  on the basis of locally registered interest. Leaking as used herein refers to the selective filtering of which LDP information is transferred to the local IS-IS database for the PE  106 . If a PBBN  104 ,  112  has no BEBs  106 C registering interest in an I-SID, information about that I-SID from other PBBNs  104 ,  112  or PBBN-PEs  106 C will not be leaked into the local ISIS-SPB routing system by the PE that is the DF for the B-VID with which the I-SID is locally associated, as extracted from the LDP information received from the other peer PEs. 
     Each PE attached to a given PBBN is administratively configured to know who the other local PEs are. In addition, it is possible to envision additional identifiers encoded in LDP explicitly to permit nodes to discover the set of local peers via LDP exchange. For each B-VID in an SPBM-PBBN  104 ,  112 , a single PE  106 A-D in the set of PEs attaching the SPBM-PBBN to the VPLS network is elected as the designated forwarder (DF) for the B-VID. A PE  106 A-D may be a DF for more than one B-VID. This DF determination may be achieved via configuration or via algorithmic techniques, with the algorithmic approach being the preferred embodiment. In some embodiments, the network  100  is configured to ensure a change in the designated forwarder is only required in cases of PE  106 A-D failure or severing connection from either the PBBN  104 ,  112  or MPLS network  108  to minimize churn (i.e., the overhead data load caused by LDP messaging and similar activity to reconfigure the network to utilize a different PE  106  as the DF) in the LDP-VPLS. 
     In certain embodiments, a backbone edge bridge (BEB) encodes a Backbone Media Access Control (B-MAC) address and I-Component Service Identifier (I-SID) as a sub-TLV in LDP PDUs associated with each PW 
     In IEEE 802.1aq networks, a link state protocol is utilized for controlling the forwarding of Ethernet frames on the network  100 . One link state protocol, the Intermediate System to Intermediate System (IS-IS), is used in 802.1aq networks for advertising both the topology of the network and logical network membership. 802.1aq has two modes of operation. A first mode for Virtual Local Area Network (VLAN)-based networks is referred to as Shortest Path Bridging VLAN mode (SPBV). A second mode for MAC based networks is referred to as Shortest Path Bridging MAC Mode (SPBM). Both SPBV and SPBM networks can support more than one set of Equal Cost Forwarding Trees (ECT) simultaneously in the data plane. An ECT set is commonly associated with a number of shortest path VLAN identifiers (SPVIDs) forming a SPVID set for SPBV, and associated 1:1 with a Backbone VLAN ID (B-VID) for SPBM. 
     According to the 802.1aq MAC mode specification, network elements in the provider network are to be configured to perform multipath forwarding of data traffic separated by B-VIDs so that different frames addressed to the same destination address, but mapped to different B-VIDs, can be forwarded over different paths (referred to as “multipath instances”) through the network  100 . A customer data frame associated with a service is to be encapsulated in accordance with 802.1aq with a header that has a separate I-SID and B-VID. This separation permits the services to scale independently of network topology. Thus, the B-VID can be used exclusively as an identifier of a multipath instance. The I-SID identifies a specific service to be provided by the multipath instance identified by the B-VID. The actual routing of multipath instances in an 802.1aq network is determined by shortest path routing augmented with deterministic tie breaking based on each node&#39;s system IDs. 
     VPLS is an Ethernet over MPLS VPN protocol solution that can use LDP to disseminate VPN and MAC information and uses MPLS as the transport protocol. Embodiments of the present invention seeks to interconnect subtending 802.1.aq networks (referred to as SPBM-PBBNs), while operationally decoupling the SPBM-PBBNs, by minimizing (via need-to-know filtering) the amount of state, topology information, nodal nicknames, and B-MACS that are leaked from LDP into the respective subtending SPBM-PBBN IS-IS control planes. These embodiments also aim to decouple network design permitting a distinct number of locally optimized multi-pathing instances in each subtending SPBM-PBBN. These embodiments also minimize the amount of configuration required. The embodiments provide a mechanism and procedures for properly resolving the presence of a B-MAC in more than one B-VID once B-VID context has been removed. The embodiments also enable BEB B-MACs to exist in multiple B-VIDs in MSTP-controlled networks (802.1ah) as well as IS-IS (802.1aq) controlled Ethernet networks 
     Referring now to  FIG. 2 , a block diagram of a network element, including a provider edge switch  106 , as used in the network system  100  of  FIG. 1  in accordance with exemplary embodiments of the present invention, is illustrated. The network element  106  includes a control plane, which includes a data processing system  204 , which may include one or more microprocessors and/or one or more circuits, such as an application specific integrated circuit (ASIC), field-programmable gate arrays (FPGAs), and the like. The one or more microprocessors can include control logic configured to handle the routing, forwarding, and processing of the data traffic. The one or more microprocessors can also be configured to perform split tiebreaker functions for spanning tree root selection, compute and install forwarding states for spanning trees, compute Shortest Path Forwarding (SPF) trees upon occurrence of a link failure, populate a Filtering Database (FDB)  212  for data forwarding. Other processes may be implemented in the control logic as well. 
     The data processing system  204  can include a memory, which can include one or more non-volatile storage devices and/or one or more volatile storage devices (e.g., random access memory (RAM)). In embodiments where the data processing system  204  includes a microprocessor, computer readable program code may be stored in a computer readable medium, such as, but not limited, to magnetic media (e.g., a hard disk), optical media (e.g., a DVD), memory devices (e.g., random access memory), and the like. In some embodiments, computer readable program code is configured such that when executed by a processor, the code causes the network element  106  to perform steps described below (e.g., steps described below with reference to the flow charts shown in  FIGS. 5 and 6 ). In other embodiments, network element  106  is configured to perform the steps described herein without the need for code. That is, for example, data processing system  204  may consist merely of one or more ASICs. Hence, the features of the present invention described above may be implemented in hardware and/or software. For example, in particular embodiments, the functional components of the network element  106  described above may be implemented by the data processing system  204  executing computer instructions, by the data processing system  204  operating independent of any computer instructions, or by any suitable combination of hardware and/or software. 
     The network element  106  also includes storage  206 , which may include one or more non-volatile storage devices and/or one or more volatile storage devices (e.g., random access memory (RAM)). The storage  206  can store various files and databases, such as a Topology Routing Database  208 , a Protocol Stack  210 , and a Filtering Database (FDB)  212 . The topology routing database  208  stores a network model or similar representation of the network topology, including the link states of the network. The FDB  212  stores forwarding states of the network element  106  in one or more forwarding tables, which indicate where to forward traffic incoming to the network element  106 . 
     The network element  106  may also include a data plane comprising a switching fabric  214 , one or more data cards  216 , a receiver (Rx) interface  218 , a transmitter (Tx) interface  220  and I/O ports  224 . The Rx and Tx interfaces  218  and  220  interface with links within the networks  104 ,  108 , and  112  through the I/O ports  224  for the transmission and reception of data via one or more antennas  226 . Alternately, the transmission and reception functions can reside in a combined transceiver  222 , which would also be connected with the antenna  226 . If the network element is a provider edge switch  106 , the I/O ports  224  also include a number of user-facing ports for providing communication from/to outside the network. The data cards  216  perform functions on data received over the interfaces  218  and  220 , and the switching fabric  214  switches data between the data cards  216  and the I/O ports  224 . 
     In certain embodiments, the network element  106  can be coupled to a management system  228 . The management system  228  can include one or more processors  230  coupled to a memory  232 . The processors  230  include logic to configure the system IDs and operations of the network element  106 , including updating the system IDs to thereby shift work distribution in the network, assign priority to a subset of spanning trees such that the non-blocking properties of the network are retained for at least these spanning trees. In exemplary embodiments, the management system  228  may perform a system management function that computes forwarding tables for each network node and then downloads the forwarding tables to the network nodes. The system management function is optional; and, in an alternative embodiment, a distributed routing system may perform the computation where each network node computes its own forwarding tables. 
     Referring now to  FIG. 3 , a block diagram of the processing of data frames as they are translated from a PBBN to a VPLS network and from a VPLS network to a PBBN in accordance with exemplary embodiments, is illustrated. When a SPBM data frame arrives at a PE  106 , intended for a destination reachable by the VPLS network, the DA B-MAC and I-SID are looked up in the interworking table, and the MPLS label stack to prepend to the frame is determined, at which point the frame is then referred to as a packet. This label stack will typically be, but is not limited to, a PW label and a Packet-Switched Network (PSN) label. The packet is then forwarded accordingly. If the frame is a multicast frame, this process may be repeated for a number of copies of the packet, such that the packet can be sent over each PW with a LDP registered receive interest in the I-SID. A packet arriving from VPLS network will have the local B-VID inferred via I-SID lookup. The MPLS information is stripped from the front of the Ethernet frame, and B-VID field in the frame is updated. If the frame has a multicast DA B-MAC, then the Organizationally Unique Identifier (OUI) field in the destination MAC address is overwritten with the SPB Source ID, and the local bits are updated according to local values prior to the frame being forwarded. 
     When a PE  106  receives a LDP TLV containing new information, the PE  106  checks if the I-SID in the TLV maps to the B-VID for which the PE  106  is an elected DF. If no BEBs in the SPBM PBBN have advertised any interest in the I-SID, it will not be associated with any B-VID locally, and it will therefore be presumed to not be of interest. If the I-SID is of local interest to the SPBM PBBN  104 ,  112 , and the PE  106  is the DF for that I-SID, a SPBM service identifier and unicast address sub-TLV is constructed/updated for advertisement into IS-IS and is added to the local IS-IS database. The SPB-TLV information from LDP that is advertised into IS-IS is also used to locally populate a forwarding table indexed by B-MAC/I-SID that points to the label stacks to impose on the SPBM frame. The bottom label of each stack being that of a specific PW to a far end SPBM network or BEB-PE. 
     When a PE  106  receives a frame from the SPBM-PBBN  104 ,  112  in a B-VID for which it is a DF, the PE  106  looks up the B-MAC/I-SID information to determine the label stack to be added to the frame for forwarding in the VPLS for each PW. The PE  106  adds the label information to the frame and forwards the resulting MPLS packet. 
     When a PE  106  receives a packet from the VPLS it may infer the B-VID to overwrite in the SPBM frame from the I-SID. If the frame has a multicast DA, the PE  106  overwrites the nickname in the frame with the local nickname (SPB Source ID). There is also a dataplane component whereby the B-VID is stripped going from PBBN to VPLS; or, on the basis of I-SID, the B-VID is added going from VPLS to PBBN. 
     A BEB-PE  106 C actually has no subtending PBBN nor concept of a B-VID, so no extra frame processing is required. A PBBN-PE  106 C is required to accept SPBM-encoded multicast DAs as if they were 802.1ah-encoded multicast DAs. The only information of interest in the destination MAC address is that it is a multicast frame, and the I-SID that is encoded in the lower 24 bits. 
     Referring now to  FIG. 4 , a block diagram of a provider edge (PE) switch  106 A-D as used in the network system  100  of  FIG. 1 , in accordance with exemplary embodiments, is illustrated. The PE  106  is connected through one interface  416  with the PBBN  104 ,  112 ,  402  and through a second interface  418  with the IP/MPLS network  404 ,  108 . The PE  106  includes an IS-IS module  410 , a control plane (CP) interworking function  406 , a LDP module  414 , an IS-IS database  408  and a LDP database  412 . 
     The IS-IS module  410  receives and transmits IS-IS protocol data units (PDUs) over the IS-IS PDUs interface  416  to maintain topological and similar network information so as to enable the forwarding of data packets over the PBBN  402 . The LDP module  414  similarly receives and transmits LDP PDUs over the LDP network interface  418  to maintain topological and similar network information for the IP/MPLS network  404 ,  108 . 
     The CP interworking function  406  exchanges information between the IS-IS module  410  and the LDP module  414  to enable the proper forwarding of data and to enable the implementation of 802.1aq shortest path bridging over VPLS. Control plane interworking for ISIS-SPB to the VPLS network is utilized when a PE  106  receives an SPBM service identifier and an unicast address sub-TLV as part of an ISIS-SPB-capable TLV. The PE  106  checks whether it is the DF for the B-VID in the sub-TLV. If the PE  106  is the DF, and if there is new or changed information, then LTV information is created for each new I-SID in the sub-TLV. The Ethernet tag ID contains the I-SID (including the Tx/Rx attributes). The encoding of I-SID information is shown in the following table: 
                                                                       
Once this information has been formatted, the LDP is used to exchange this information with each peer PE in the PW mesh associated with the port or virtual BEB of arrival.
 
     The PE  106  configuration can occur at PBBN  104 ,  112 ,  402  commissioning. APE  106  is configured with standard SPBM information: a nodal nickname (SP Source ID) used for algorithmic construction of multicast Destination Address (DA) addresses; the set of B-VIDs used in the PBBN  104 ,  112 ; and multi-pathing algorithm IDs to use. 
     According to certain embodiments, each PE  106  can implement the following exemplary DF election process for itself. In one embodiment, a PE  106  self appoints in the role of DF for a B-VID for a given PBBN  104 ,  112 . This process is implemented where the PE  106  notes the set of peers attached to the local SPBM-PBBN with which it has an active LDP adjacency. For each B-VID in the PBBN  104 , a ranked list is produced, as well as a corresponding ranked list of the IP addresses of the local set of peer PEs. The B-VIDs are then assigned to the PEs. There will typically be more B-VIDs than PEs, so the ranked mapping will wrap. For example, if there are 6B-VIDs and 3 PEs, then the mapping will be 1→1 2→2 3→3 4→1 5→2 6→3. 
     Exemplary embodiments for implementing shortest path bridging support over a virtual private LAN service network are described below, with specific process flow steps discussed below with reference to  FIGS. 5 and 6 . In certain embodiments, an interworking between LDP and SPBM IS-IS is assumed. A VPLS PE  106  can translate between LDP/MPLS  404  on the VPLS side and standard 802.1aq SPB on the PBBN  402  side. In these exemplary embodiments, co-located BEB/PEs  106 C can fully participate in a larger set of SPBM PBBNs  104 ,  112 . These embodiments offer a solution for mapping existing S-tagged PBBNs  104 ,  112  into an VPLS instance. In particular embodiments, the B-VID is pinned. The provisioning to pin individual I-SIDs can result in a large amount of configuration processes, and it is possible in embodiments outside the scope of this invention to configure the DFs such that a B-MAC appears in multiple PEs in the same B-VID in the same PBBN, and thus produce an unworkable result. 
     In contrast, the particular embodiments disclosed herein provide that a sole PE  106  is elected a DF for a given B-VID in the PBBN  104 ,  112 . A given PE  106  is designated the transit device for the set of I-SIDs associated with a given B-VID. The PE  106  inherits the B-VID designation and advertises the PE  106  as the DF for all I-SIDs advertised by the SPBM-PBBN  104 ,  112  for that B-VID in that segment (note that a given I-SID value only exists in a single B-VID at a given time in a SPBM-PBBN  104 ,  112 ). 
     In these embodiments, the PE  106  logically appears as a BEB  106 C in the PBBN  104 ,  112 . If other VPLS connected segments have advertised an I-SID that corresponds to an I-SID registered in the local PBBN  104 ,  112 ; and if the PE  106  is the DF for the B-VID with which that I-SID is associated, then the PE  106  advertises remote I-SID interest into ISIS-SPB. Otherwise, the PE  106  remains silent. This process keeps the global I-SID table out of the individual ISIS-SPB instances. 
     In the control plane interworking operation between ISIS-SPB and LDP, data elements are received by the PE  106  from other LDP speakers. A PE  106  has already determined whether it is a DF for a B-VID by the DF election procedures. A PE  106  learns the local I-SID/B-VID bindings in the PBBN  104 ,  112  from IS-IS. A PE  106  accepts the SPBM-PBBN advertisements received from LDP. If the PE  106  does not have local knowledge of the I-SID (no registered interest in the local PBBN  104 ,  112 ), it simply retains the LDP information for future use. If the PE  106  is a DF for the I-SID (i.e., the I-SID associated with the B-VID for which the PE  106  is a DF) then the PE  106  adds an entry to the VPLS mapping table, B_MAC/I_SID points to a label stack that contains the MPLS label from the SPBM-PBBN advertisement, and the label for the Forwarding Equivalence Class (FEC) is advertised in the SPBM-PBBN advertisements. The PE  106  formulates an “SPBM service identifier and unicast address sub-TLV” containing the B-MAC, list of I-SIDs associated with the B-MAC in the LDP tables, and the base VID (B-VID associated with the I-SID learned from the ISIS) and adds this information to the IS-IS database  408 . This process can involve adding the I-SID to an existing IS-IS sub-TLV as a means of updating the IS-IS database  408 . An additional loop avoidance integrity check would be to ensure that such a record did not already exist associated with another BEB in the local PBBN (which would imply a race condition) and deferring such an update of ISIS until such a record was removed. 
     In the control plane interworking operation for SPBM, a service identifier and unicast address sub-TLV are received by the PE  106  from another IS-IS speaker in the PBBN  104 ,  112 . The PE  106  checks if it is the DF for the B-VID in the sub-TLV. If the PE  106  is a DF for a B-VID, the PE  106  then formulates LDP information elements for each I-SID listed in the TLV not seen before, where a Tag ID=I-SID and I-SID Tx/Rx attributes, and where a MAC address is the B-MAC address from the sub-TLV. 
     In the data plane operation for the VPLS to PBBN SPB interworking, as shown in  FIG. 3 , all MPLS unicast packets arriving at the PE  106  from the VPLS MPLS network  404 ,  108  have the B-VID to overwrite in the frame. This can be inferred from the MPLS label (if it is has been uniquely advertised for all I-SIDs in a single B-VID) or from the I-SID. All MPLS multicast packets arriving at the PE  106  from the VPLS have the B-VID inferred from the I-SID as the label is source administered, not destination administered, and therefore cannot be overloaded to infer B-VID as well. All data packets with an Ethernet multicast Destination Address (DA) have the Organizationally Unique ID (OUI) portion of the DA-MAC overwritten with the local SPBM nodal nickname (SP Source ID) for the PE  106 , and the local address bit is set if in an SPBM PBBN. If the PE  106  is a co-located BEB and PE (PBBN-PE  106 C), the standard OUI for 802.1ah I-SID multicast trees is included, and the local address bit is cleared. 
     In the data plane operation for the PBBN to VPLS interworking, as shown in  FIG. 3 , unicast frames arriving at a PE  106  have the B-MAC/I-SID tuple looked up to determine the MPLS label stack to apply to the data packet. Frames with multicast DAs have the I-SID looked up and are either locally replicated to each PE  106  with registered interest in the I-SID, or mapped to a multicast group corresponding to the I-SID community of interest depending on what multicast capability is integrated into the VPLS implementation. 
     The other PEs  106  need to know when a DF for a B-VID has failed. This can be accomplished by monitoring the LDP adjacencies with the local peer PEs. Similarly, a PE which is severed from the SPBM-PBBN network needs to explicitly allow its LDP adjacencies to fail as it can no longer offer transit and interworking between the SPBM and MPLS networks. 
     These particular embodiments provide a solution for ensuring a B-MAC in a given B-VID only appears at only one PE  106  in a PBBN  104 ,  112 , thereby ensuring that there is no forwarding ambiguity that existing Ethernet hardware cannot handle. These embodiments function such that a PE  106  can steer traffic to an appropriate peer PE  106 . The algorithmic pinning of a peer B-VID DF as part of normal control plane (CP) interworking operation minimizes the amount of potential configuration of PEs  106 . The pinning of a peer B-VID DF isolates the LDP VPLS from churn overhead and from routing instability in the individual PBBNs  104 ,  112 . These embodiments are compatible with existing PBBN-VPLS models, require no complex interworking, and can interwork with full loop avoidance. 
     Referring now to  FIG. 5 , a flowchart of the steps performed by a provider edge switch  106  in methods for implementing shortest path bridging over a VPLS network, in accordance with exemplary embodiments, is illustrated.  FIG. 5  can also be perceived as illustrating an exemplary process of interworking the 802.1aq SPB control plane with the VPLS LDP control plane, whereby a technique for electing designated forwarders (DF) for a given B-VID in the local PBBN  104 ,  112  determines which PE  106  uniquely transfers specific I-SID and MAC information for the B-VID from IS-IS into LDP and what (by direct inference from local I-SID to B-VID mappings) I-SID and MAC information in LDP is leaked from LDP into IS-IS as associated with the specific PE  106 . The technique is primarily focused on selecting one PE as a designated forwarder for each B-VID in the local PBBN. 
     The method is initiated at step  502  when an IS-IS Protocol Data Unit (PDU) is received by a PE  106 , whereby the PDU may include an IS-IS Type Length Value (TLV). The received IS-IS PDU data is processed in the normal IS-IS protocol procedure at step  504 . The method further includes validating the configured local multipath configuration as a consequence of IS-IS hello exchange. A check is made at step  506  to determine, from the received IS-IS PDU data, whether a change in the current configuration of designated forwarders (DFs), which may be for a given B-VID, for the PEs  106  needs to be effected in the interworking function (e.g., has there been a change in RD in the ESI for the RT?). If a change is required, then a determination is made at step  516  regarding whether the present PE  106  remains a DF for one or more B-VIDs. If the PE  106  was, but as a consequence of changed network state should no longer be a DF for one or more B-VIDs, then all local DF associated information from the Pseudowire (PW) adjacency&#39;s LDP database  412  associated with that PE  106  is removed at step  518 , and all DF associated remote LDP information for the set of remote PBBNs associated with that PE  106  is removed at step  520  from the local IS-IS database  408 . The IS-IS database  408  and the LDP databases  412  are then synchronized at step  522  with peers of the PE  106 , and processing is then transferred to step  524 , as discussed below. 
     If the PE  106  is determined at step  516  to be a DF for one or more B-VIDs, then a check is made at step  524  to determine whether the PE  106  was not, but has recently become a DF for one or more B-VIDs. If the PE  106  has become a DF for one or more B-VIDs, then all local DF information for that PE  106  is added at step  526  to the LDP databases  412  from the IS-IS database  408 , and all DF associated remote SPBM information for that PE  106  is added at step  528  to the IS-IS database  408  from the LDP databases  412 . That is, in response to the PE switch becoming a DF for the one or more B-VIDs, the IS-IS database information locally associated with those B-VIDs is processed to generate LDP TLV information. The IS-IS database  408  and the LDP databases  412  are then synchronized at step  530  with peers of the PE  106 , and processing is then returned at step  532  to step  502  to await the next IS-IS PDU. 
     If a DF configuration change is determined at step  506  to not be required, then a determination is made at step  508  whether the current PE is a DF for any B-VID. If the PE  106  is determined to be a DF for any B-VID, then a check is performed at step  510  to determine whether the received IS-IS PD information contains either a new SPBM service identifier or changed unicast address sub-TLV information for a B-VID for which the PE  106  is a DF. If the received IS-IS PDU is determined to contain a new SPBM service identifier or changed unicast address sub-TLV information for a B-VID for which the PE  106  is a DF, then the new or changed information for the PE  106  in the set of LDP adjacencies associated with the SPBM network is added at step  512  to the LDP databases  412  from the IS-IS database  406 . Processing is then returned at step  514  to step  502  to await the next IS-IS PDU. 
     Referring now to  FIG. 6 , a flowchart of the steps performed by a provider edge switch  106  for updating pseudowire (PW) adjacencies in methods for implementing shortest path bridging over a VPLS network, in accordance with exemplary embodiments, is illustrated. The process shown in  FIG. 6  begins at step  602  with the receipt, at the PE  106 , of LDP information from a peer node. The received LDP information is processed in step  604  according to the normal LDP protocol. A check is made at step  606  to determine whether the received LDP information contains new information regarding PW adjacencies for the PE  106 . If no new PW adjacency information has been received, then the process completes. If new PW adjacency information has been received, then a check is made at step  608  to determine whether the current PE  106  is a DF for a specified I-SID via correlating I-SID to B-VID associations advertised locally by IS-IS to determine what I-SIDs traffic will transit the DF. If the PE  106  is determined to be a DF for the I-SID, then the received SPB information associated with the PW adjacency is added at step  610  to the IS-IS database  408 , and the process completes at step  612 . 
     Similarly, in the situation where a PE  106  became the elected DF for a B-VID in an operating network  100 , the IS-IS database  408  would be processed to construct the TLV information associated with the new role of the PE  106 . Any PE  106  that does not need to participate in the tandem calculations can use the IS-IS overload bit to exclude SPBM tandem paths and behave as a pure interworking platform. 
     If the LDP database  412  has information for the I-SID, and a first instance of registration of interest in the I-SID from the SPBM-PBBN  104 ,  112  is occurring, then then I-SID information with that tag is processed to construct an updated set of SPBM service identifier and unicast address sub-TLVs to be advertised by the PE  106 . The ISIS-SPB information is also used to keep current a local table indexed by I-SID to indicate the associated B-VID for processing of frames received from VPLS. When an I-SID is associated with more than one B-VID, only one entry is allowed in the table. 
     While various embodiments have been described above, it should be understood that they have been presented by way of example only, and not limitation. Thus, the breadth and scope of the present disclosure should not limited by any of the above-described exemplary embodiments. Moreover, any combination of the above-described elements in all possible variations thereof is encompassed by the disclosure unless otherwise indicated herein or otherwise clearly contradicted by context. 
     Additionally, while the processes described above and illustrated in the drawings are shown as a sequence of steps, this was done solely for the sake of illustration. Accordingly, it is contemplated that some steps may be added, some steps may be omitted, the order of the steps may be re-arranged, and some steps may be performed in parallel.