US20100226381A1 - Routing frames in a trill network using service vlan identifiers - Google Patents
Routing frames in a trill network using service vlan identifiers Download PDFInfo
- Publication number
- US20100226381A1 US20100226381A1 US12/397,811 US39781109A US2010226381A1 US 20100226381 A1 US20100226381 A1 US 20100226381A1 US 39781109 A US39781109 A US 39781109A US 2010226381 A1 US2010226381 A1 US 2010226381A1
- Authority
- US
- United States
- Prior art keywords
- bridge
- node
- trill
- network
- egress
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L12/00—Data switching networks
- H04L12/28—Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
- H04L12/46—Interconnection of networks
- H04L12/4641—Virtual LANs, VLANs, e.g. virtual private networks [VPN]
- H04L12/4645—Details on frame tagging
- H04L12/465—Details on frame tagging wherein a single frame includes a plurality of VLAN tags
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L45/00—Routing or path finding of packets in data switching networks
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L45/00—Routing or path finding of packets in data switching networks
- H04L45/66—Layer 2 routing, e.g. in Ethernet based MAN's
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L45/00—Routing or path finding of packets in data switching networks
- H04L45/72—Routing based on the source address
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L45/00—Routing or path finding of packets in data switching networks
- H04L45/76—Routing in software-defined topologies, e.g. routing between virtual machines
Definitions
- the present invention relates to the field of computer networking, and in particular to a technique for routing frames in a Transparent Interconnection of Lots of Links (TRILL) network using service virtual local area network (VLAN) identifiers.
- TRILL Transparent Interconnection of Lots of Links
- VLAN virtual local area network
- Virtual networking technology allows devices located on a single physical network to operate as part of multiple virtual networks.
- Such virtual networks provide flexibility not available in early computer networks and allow network administrators to create layers of abstraction to simply complex network topologies. For example, using a virtual network, an enterprise may have a virtual blade server chassis with routers spread across multiple physical locations that effectively acts as a single router, allowing a data center split across multiple sites to act as if the data center is a single site.
- Ethernet is a family of frame-based computer networking technologies for local area networks. Ethernet is promulgated by Institute of Electrical and Electronics Engineers (IEEE) in various standards specifications as part of the IEEE 802 family of standards. Ethernet defines a number of wiring and signaling standards for the Physical Layer of the Open Systems Interconnection (OSI) Networking Model, the means for network access at the Media Access Control (MAC) and Data Link Layer, and a common addressing format. At the physical layer, Ethernet networks are ubiquitous, carrying all kinds of traffic over multiple types of physical connections (wired or wireless), including 10 Mbps, 100 Mbps, 1 Gbps, 10 Gbps, 100 Gbps connections.
- OSI Open Systems Interconnection
- the Ethernet service layer generally referred to as Layer-2 because it is the MAC and Data Link Layer in the OSI networking model, provides the services generally required by a network.
- These network services typically include filtering, replication, forwarding broadcast, unicast, and multicast (BUM) traffic, and following a serviced topology, which may include virtual local area networks (VLANs), ATM segments of VLANs based on the ATM Lane Standard (ELANs), Ethernet Private Lines (ELINEs), and rooted multipoint Ethernet virtual connections (ETREEs).
- VLANs virtual local area networks
- ELANs ATM segments of VLANs based on the ATM Lane Standard
- ELINEs Ethernet Private Lines
- ETREEs rooted multipoint Ethernet virtual connections
- VLAN services are specified in the IEEE 802.1Q standard and allow enterprise customers to configure various computing devices to communicate as if those devices were attached to the same broadcast domain, regardless of their physical locations.
- VLANs provide segmentation services traditionally provided by routers in local area network (LAN) configurations and address issues such as scalability, security, and network management.
- Bridges in VLAN topologies enforce the integrity of VLAN broadcast domains because such bridges are not permitted to bridge network traffic between VLANs. In this way, VLANs may provide broadcast filtering, security, address summarization, and traffic flow management. Network administrators may use VLANs to create multiple Layer 3 networks on the same Layer-2 bridge.
- DHCP Dynamic Host Configuration Protocol
- a company may connect its network at site A to its network at site B through a network provided by a telecommunications company.
- devices on the different customer networks may still use VLAN services to communicate through the provider's network as though the devices were all located on the same LAN.
- the IEEE 802.1Q standard was amended by the IEEE 802.ad standard, often referred to as “Q-in-Q” or “stacked VLANs.”
- the IEEE 802.ad standard sets forth an architecture and bridge protocol to provide separate instances of MAC network services to multiple independent users of a provider network in a manner that does not require cooperation among the customers, and requires a minimum of cooperation between the customers and the provider of the MAC network service.
- Q-in-Q provides customers with the ability to configure their own VLANs inside the VLAN provided to the customer by a service provider. In such a manner, the service provider may configure one service VLAN for the customer, and the customer can utilize that service VLAN to establish multiple customer VLANs.
- IEEE promulgates specifications for such a provider backbone bridging network in the IEEE 802.1ah standard. IEEE 802.1ah compliant networks provide complete separation of customer and service provider domains by encapsulating Ethernet frames with a service provider MAC header.
- Ethernet frames are originally encapsulated in the customer network with a customer MAC header, this subsequent encapsulation with a service provider MAC header is often referred to as ‘MAC-in-MAC encapsulation.’
- Ethernet frames being sent in a customer's network from one domain to another through multiple service provider network domains contain two MAC headers.
- the customer MAC header provides routing information to the bridges in the customer's networks, while the service provider MAC header provides routing information to the bridges in the service provider's backbone bridging network.
- FIG. 1 sets forth a line drawing that illustrates exemplary Ethernet frame structures compliant with the IEEE 802.1 family of standards.
- FIG. 1 illustrates a traditional Ethernet frame 100 implemented in a customer's network according to the IEEE 802.1D standard.
- the customer frame 100 consists of a payload 101 , a header type (EthType) 102 indicating that frame 100 is an 802.1D frame, a customer network source MAC address (C-SA) 103 , and a customer network destination MAC address (C-DA) 104 .
- the customer network source MAC address 103 specifies the source node in the customer network that originates the frame 100
- the customer network destination MAC address 104 specifies the destination node in the customer network to which the frame is bound for delivery.
- a customer may organize the nodes into varies VLANs to provide traffic flow management, security, ease network administration, and the like.
- VLANs established by a customer for use within the customer's networks are generally referred to a ‘customer VLANs.’
- frame 100 is encapsulated as frame 110 to include a customer VLAN identifier (C-VID) 115 and a new header type (EthType) 116 , indicating that the frame 110 is an 802.1Q frame.
- C-VID customer VLAN identifier
- EtType new header type
- encapsulation may allow additional fields to be placed in any position relative to the encapsulated object, including interior to the original object, and does not require the additional fields be placed surrounding or at either end of the encapsulated object.
- the frame 110 is further encapsulated as shown by frame 120 , adding new fields for: a service VLAN identifier (S-VID) 127 , and a new header type (EthType) 128 indicating the frame 120 is IEEE 802.1ad compliant.
- S-VID service VLAN identifier
- EtherType new header type
- the frame 120 is further encapsulated to add additional fields for: a service identifier (I-SID) 131 , a new header type (EthType) 132 corresponding to the service identifier 131 , a backbone VLAN identifier 133 , an additional header type (EthType) 134 indicating that the frame 130 is IEEE 802.1ah compliant, a backbone source MAC address (B-SA) 135 specifying the bridge through which the frame ingresses into the PBB network, and a backbone destination MAC address (B-DA) 136 specifying the bridge through which the frame egresses the PBB network.
- I-SID service identifier
- EthType new header type
- EthType additional header type
- B-SA backbone source MAC address
- B-DA backbone destination MAC address
- FIGS. 2 and 3 set forth network diagrams that illustrate an exemplary provider bridge network 200 interconnecting exemplary networks for customers A and B ( 201 and 202 , respectively).
- customer A 201 maintains three networks 203 , 205 , 207
- customer B 202 maintains two networks 204 , 206 .
- the provider bridge network 200 consists of six bridges, four provider edge bridges (PEB) 1 - 4 and two provider core bridges (PCB) 1 - 2 .
- An edge bridge is a bridge through which frames ingress and egress the network 200 —that is, an edge bridge is positioned at the ‘edge’ of the network topology.
- a core bridge is a bridge used to interconnect one or more edge bridges.
- FIG. 2 illustrates a frame 220 at several stages as the frame 220 traverses the networks of FIG. 2 from customer equipment (CE)- 11 210 in network 203 of customer A 201 to CE- 31 212 in network 205 of customer A 201 .
- the communications between CE- 11 210 and CE- 31 212 are implemented using a customer VLAN, and so the frame 220 a from CE- 11 210 is encapsulated with a customer VLAN header 230 that includes a customer VLAN identifier (C-VID) and a header type (EthType) specifying that the frame 220 a is an IEEE 802.1Q compliant frame.
- C-VID customer VLAN identifier
- EtType header type
- the frame 220 includes a source MAC address (CE- 11 -SA) for CE- 11 210 , which indicates that CE- 11 210 originated the frame 220 a , and a destination MAC address (CE- 31 -DA) for CE- 31 212 , which indicates that the frame 220 is destined for CE- 31 212 .
- CE- 11 -SA source MAC address
- CE- 31 -DA destination MAC address
- PEB- 1 240 When provider edge bridge (PEB)- 1 240 receives the frame 220 a , PEB- 1 240 encapsulates the frame 220 a into an 802.1ad frame 220 b by adding a service VLAN header 231 to the frame 220 .
- the service VLAN header 231 includes a service VLAN identifier (S-VID-A) assigned by the provider to customer A 201 and a header type (EthType) specifying that the frame is IEEE 802.1ad compliant.
- S-VID-A service VLAN identifier
- EtType header type
- the provider bridges route the frame 220 through the provider network 200 from the PEB- 1 240 through which the frame 220 ingresses the network 200 to the PEB- 3 242 through which the frame 220 egresses the network 200 .
- PEB- 3 242 then de-encapsulates the frame 220 b by removing to service VLAN header 231 , leaving IEEE 802.1Q compliant frame 220 a for delivery to CE- 31 212 .
- computing device CE- 15 310 in network 204 of customer B 202 sends an IEEE 802.1Q compliant frame 320 a to device CE- 25 312 customer B's network 206 .
- frame 320 a is encapsulated with a service VLAN header 331 .
- the service VLAN header 331 includes a service VLAN identifier (S-VID-B) assigned by the service provider to customer B 202 and a header type (EthType) specifying that the frame is IEEE 802.1ad compliant.
- the ingress bridge 240 of the provider network 200 forwards the frame 320 b to the egress bridge 342 of the provider network 200 , which in turn de-encapsulates the frame 320 b by removing the service VLAN header 331 , leaving IEEE 802.1Q compliant frame 320 a for delivery to CE- 35 312 .
- the bridges learn the MAC addresses of the devices in customer B network by monitoring the MAC addresses associated with each service VLAN identifier assigned to customer B 202 by the network provider.
- the service provider uses one or more SVLANs to transport frames for a customer's VLANs between multiple customer networks.
- the provider bridges often use the Generic VLAN registration protocol (GVRP) or the Multiple VLAN Registration Protocol (MVRP).
- GVRP Generic VLAN registration protocol
- MVRP Multiple VLAN Registration Protocol
- provider bridges may use the Generic Attribute Registration Protocol Multicast Registration Protocol (GMRP) or the Multiple Multicast Registration Protocol (MMRP).
- GMRP Generic Attribute Registration Protocol Multicast Registration Protocol
- MMRP Multiple Multicast Registration Protocol
- provider edge bridges learn all customer equipment MAC addresses and forward customer frames based on service VLAN identifier and customer VLAN identifier pairs, while provider core bridges learn all customer equipment MAC addresses, but forward customer frames based only on the service VLAN identifiers.
- a given customer equipment MAC address is at the same site for all service VLANs.
- provider bridge networks have scaling problems. Because only 4,096 service VLAN identifiers are available under current protocols, provider bridge networks are limited in the number of customer networks they can serve effectively and efficiently. Further, because provider bridges learn the MAC addresses for all customer devices, scaling issues often arise when a provider serves one or more customers with large virtual networks. In addition, there is a potential for interaction between customer and service provider control protocols.
- FIG. 4 sets forth a network diagram that illustrates an exemplary provider backbone bridge network 400 interconnecting exemplary provider bridge networks 410 , 420 , 430 .
- the PBB network 400 of FIG. 4 consists of four provider backbone edge bridges (BEB)—that is, BEB- 11 416 , BEB- 12 418 , BEB- 21 434 , and BEB- 22 436 —and two provider backbone core bridges (BCB)—that is, BCB- 1 401 and BCB- 2 402 .
- BEB provider backbone edge bridges
- BCB provider backbone core bridges
- FIG. 4 illustrates a frame 412 at several stages as the frame 412 traverses the networks of FIG. 4 from customer equipment (CE)- 11 411 to CE- 34 431 .
- the customer utilizing the PB networks 410 , 430 and the PBB network 400 has grouped CE- 11 411 and CE- 34 431 in the same customer VLAN.
- frame 412 a from CE- 11 411 includes a customer VLAN header 415 .
- the customer VLAN header 415 includes the customer VLAN identifier (C-VID) assigned by the customer for the customer VLAN and a header type (EthType) that specifies that the frame 412 a is IEEE 802.1Q compliant.
- C-VID customer VLAN identifier
- EtType header type
- PEB- 11 413 encapsulates the frame with a service VLAN header 417 .
- the service VLAN header 417 includes the service VLAN identifier (S-VID) assigned to the customer by the network provider and a header type (EthType) that specifies that the frame 412 a is IEEE 802.1ad compliant.
- BEB- 11 416 encapsulates the frame with a backbone header 419 .
- the backbone header 419 includes a service identifier (I-SID), a new header type (EthType) corresponding to the service identifier, a backbone VLAN identifier, an additional header type (EthType) indicating that the frame 412 c is IEEE 802.1ah compliant, a backbone source MAC address (BEB- 11 -SA) specifying the backbone edge bridge through which the frame ingresses into the PBB network 400 , and a backbone destination MAC address (BEB- 22 -DA) specifying the backbone edge bridge 436 through which the frame egresses the PBB network 400 .
- I-SID service identifier
- EtType new header type
- EthType backbone VLAN identifier
- EthType additional header type indicating that the frame 412 c is IEEE 802.1ah compliant
- BEB- 11 -SA backbone source MAC address
- the frame 412 c is routed through the provider backbone bridge network 400 from the ingress bridge, BEB- 11 416 , to the egress bridge, BEB- 22 436 .
- BEB- 22 436 de-encapsulates the frame 412 c by removing the backbone header 419 , leaving the frame 412 IEEE 802.1ad compliant.
- BEB- 22 436 then sends the frame 412 along to PEB- 31 433 in the IEEE 802.1ad compliant provider bridge network 430 .
- PEB- 31 433 further de-encapsulates the frame 412 by removing the service VLAN header 417 , leaving the frame 412 IEEE 802.1Q compliant.
- PEB- 31 433 then forwards the frame 412 along to CE- 34 431 for delivery.
- MAC address learning for customer equipment is limited to the provider edge bridge, and the I-SID field allows separation of Ethernet as a service from Ethernet as infrastructure.
- the networking architectures described by the IEEE 802.1Q, 802.1ad, and 802.1ah standards allow enterprise customers to establish multiple networks that are geographically dispersed, yet operate as a single virtual network. These physically separate LANs communicate through PB and PBB networks using forwarding trees established using a spanning tree protocol.
- the spanning tree protocol is an OSI Layer-2 protocol that ensures a loop-free topology for any bridged LAN. This protocol allows a network design to include spare (redundant) links to provide automatic backup paths if an active link fails, without the danger of bridge loops, or the need for manual enabling or disabling of these backup links. Bridge loops must be avoided because such loops result in traffic that floods the network.
- the spanning tree protocol is defined in the IEEE 802.1D standard, and, as the name suggests, it creates a spanning tree within a mesh network of connected Layer-2 bridges, and disables those links that are not part of the tree, leaving a single active path between any two network nodes.
- the spanning tree protocol disables links that are not part of the forwarding tree, bottlenecks are often created by concentrating traffic onto selected links. Also, due to the nature of the spanning tree protocol temporary loops may develop if spanning tree messages are lost or as the network topology changes because nodes are brought on-line or taken off-line or moved in the network. During periods when temporary loops exists, frames may flood the network because the standard Ethernet header does not contain a time-to-live field or hop count that specifies when a frame has become stale and should be discarded. Further, the paths developed between nodes of the network are not necessarily the pair-wise shortest path, but rather are the paths that remain after the spanning tree protocol eliminates redundant paths.
- FIG. 5 sets forth a network diagram that illustrates an exemplary TRILL network 500 , also known as a router-bridge network, because the devices behave as both a router and a bridge at the ISO Layer-2 level.
- the TRILL network 500 includes three core router-bridges (CRB)—that is, CRB- 4 540 , CRB- 5 542 , and CRB- 6 544 —as well as five edge router-bridges (ERB)—that is, ERB- 1 530 , ERB- 2 532 , ERB- 8 534 , ERB- 9 536 , and ERB- 7 538 .
- CRB core router-bridges
- ERB edge router-bridges
- ERB- 1 530 that is, ERB- 2 532 , ERB- 8 534 , ERB- 9 536 , and ERB- 7 538 .
- the TRILL network 500 is provided to customers by a network provider.
- the edges of the TRILL network 500 typically extend into the datacenter where the customer equipment is housed. In fact, often each equipment rack includes a bridge that operates as an edge of the TRILL network 500 .
- These TRILL networks can extend throughout one or more datacenters to interconnect various networks.
- the TRILL network 500 of FIG. 5 interconnects two IEEE 802.1Q networks 510 , 520 .
- 802.1Q network 510 is connected to the TRILL network 500 through ERB- 1 530 and ERB- 2 532 .
- 802.1Q network 520 is connected to the TRILL network 500 through ERB- 8 534 and ERB- 536 .
- 802.1Q network 510 includes a legacy bridge (LB)- 55 514 and a enterprise bridge (EB)- 16 516 , neither of which are TRILL compliant.
- 802.1Q network 520 includes EB- 85 524 and EB- 96 526 .
- End point devices include customer equipment (CE)- 11 512 connected to LB- 55 514 , CE- 31 522 connected to EB- 85 524 , and CE- 77 539 connected to ERB- 7 538 .
- End point devices CE- 11 512 , CE- 31 522 , and CE- 77 539 can be any type of computing device, including workstations, servers, network devices, and so on.
- FIG. 5 illustrates a frame 518 at several stages as the frame 518 traverses the networks of FIG. 5 from CE- 11 512 to CE- 31 522 .
- the customer utilizing the TRILL network 500 to bridge multiple 802.1Q networks has grouped CE- 11 512 and CE- 31 522 in the same customer VLAN.
- frame 518 a sent by LB- 55 514 for CE- 11 512 includes a customer VLAN header 519 .
- the customer VLAN header 519 includes the customer VLAN identifier (C-VID) assigned by the customer for the customer VLAN and a header type (EthType) that specifies that the frame 518 a is IEEE 802.1Q compliant.
- C-VID customer VLAN identifier
- EtType header type
- ERB- 1 530 encapsulates the frame 518 with a TRILL header 551 .
- the TRILL header 551 includes a TRILL source nickname (ERB- 1 -SN) specifying ERB- 1 as the ingress edge router-bridge for the frame 518 , a TRILL destination nickname (ERB- 8 -DN) specifying ERB- 8 534 as the egress edge router-bridge for the frame 518 , various TRILL flags, a hop count, and a header type (EthType) indicating that frame 518 b is a TRILL frame.
- TRILL nicknames are assigned to every router-bridge in a TRILL network using a dynamic nickname acquisition protocol or other protocols as will occur to those of skill in the art.
- ERB- 1 530 uses MAC-in-MAC encapsulation to add an Ethernet MAC header 552 to frame 518 .
- the MAC header 552 includes a outer transport VLAN identifier (OT-VLAN-ID), a header type (EthType), a source MAC address (ERB- 1 -SA) specifying ERB- 1 530 as the node transmitting the frame 518 b on the next network hop through the network 500 , and a destination MAC address (CRB- 5 -DA) specifying CRB- 5 542 as the node receiving the frame 518 b on the next network hop through the network 500 .
- OTP-VLAN-ID outer transport VLAN identifier
- EtType header type
- ERB- 1 -SA source MAC address
- CRB- 5 -DA destination MAC address
- ERB- 1 530 then sends the frame 518 to CRB- 5 542 , which routes the frame through the TRILL network 500 to CRB- 4 540 based on a shortest path to ERB- 8 534 .
- the MAC header 552 is changed at each hop to update the source and destination MAC addresses for the next network hop. Accordingly, when the frame 518 c passes from CRB- 4 540 to ERB- 8 534 , the frame 518 includes MAC header 562 .
- ERB- 8 -DA destination MAC address
- ERB- 8 534 de-encapsulates the frame 518 by removing the MAC header 562 and the TRILL header 551 , leaving frame 518 a for delivery to CE- 31 522 through EB- 85 524 .
- the TRILL network 500 of FIG. 5 operates as a massive switch fabric from the perspective of the customer network.
- Frames enter the TRILL network at an ingress bridge and are routed along the shortest path hop-by-hop through the TRILL network to an egress bridge for delivery to a customer network.
- the TRILL bridges learn the MAC address of the customer equipment in the customer networks to which the TRILL bridges connect, the TRILL bridges share information among one another about which customer MAC addresses related to which TRILL bridge nickname.
- ISO Layer-2 frames with known unicast addresses are routed hop-by-hop based on TRILL nicknames of the ingress and egress edge router-bridges by the transit or core router-bridges.
- ISO Layer-2 multicast traffic can also be routed hop-by-hop based on multicast distribution trees.
- TRILL Shortest Path Provider Backbone Bridging
- SPPBB Shortest Path Provider Backbone Bridging
- MAC-in-MAC encapsulation Unfortunately, current generation hardware for typical rack-mounted bridges, that form the edge of these networks, do not support MAC-in-MAC encapsulation, thereby limiting the use of TRILL, SPPBB, and similar solutions that provide shortest path routing at Layer-2 level.
- Routing frames in a TRILL network using service VLAN identifiers advantageously does not require edge bridges that support MAC-in-MAC encapsulation to overcome the 4096 VLAN identifier limitation across multiple, interconnected IEEE 802.1 Q networks. Rather, such edge bridges need only be updated with software improved for routing frames using bridge identifiers according to embodiments of the present invention.
- existing rack-mounted bridges may be utilized as edge bridges in networks that require MAC-in-MAC encapsulation to provide shortest path forwarding services such as, for example, TRILL networks or SPB networks.
- the TRILL network in which frames are routed using service VLAN identifiers includes a plurality of bridge nodes. At least one of the bridge nodes operates as an ingress bridge node through which frames are received into the network. At least one of the bridge nodes operates as an egress bridge node through which frames are transmitted out of the network.
- a bridge node in the network receives a frame from the ingress bridge node for transmission to a destination node. The destination node is connected to the TRILL network through the egress bridge node, and the source node originating the frame is connected to the TRILL network through the ingress bridge node.
- the received frame includes a customer VLAN identifier, a service VLAN identifier for the ingress bridge node, and a destination node address for the destination node.
- the frame does not utilize MAC-in-MAC encapsulation at this point. Rather, the bridge node uses the service VLAN identifier for the ingress bridge node and the destination node address for the destination node to add a TRILL header to the frame that conforms with the TRILL protocol.
- the TRILL header includes an ingress bridge nickname and an egress bridge nickname. The bridge node then routes the frame to the egress bridge node through which the destination node connects to the network in dependence upon the ingress bridge nickname and the egress bridge nickname.
- the frame eventually traverses through the TRILL network to reach a bridge node connected to the egress bridge node by a single hop.
- the bridge node connected to the egress bridge node by a single hop receives the frame for transmission to a destination node.
- the frame includes a destination node address for the destination node and a TRILL header, which in turn includes an ingress bridge nickname for the ingress bridge node and an egress bridge nickname for the egress bridge node.
- the bridge node determines that the frame traverses the egress bridge node on the next hop toward the destination node. Based on this determination, the bridge node replaces the TRILL header with the service VLAN identifier for the ingress bridge node and routes the frame to the egress bridge node.
- the egress bridge node may then route the frame to the destination node.
- FIG. 1 sets forth a line drawing that illustrates exemplary Ethernet frame structures compliant with the IEEE 802.1 family of standards.
- FIG. 2 sets forth a network diagram that illustrates an exemplary provider bridge network interconnecting exemplary customer networks.
- FIG. 3 sets forth a network diagram that illustrates an exemplary provider bridge network interconnecting exemplary customer networks.
- FIG. 4 sets forth a network diagram that illustrates an exemplary provider backbone bridge network interconnecting exemplary provider bridge networks.
- FIG. 5 sets forth a network diagram that illustrates an exemplary TRILL network.
- FIG. 6 sets forth a network diagram that illustrates a TRILL network having bridges that support routing frames in a TRILL network using service VLAN identifiers according to embodiments of the present invention.
- FIG. 7 sets forth a block diagram of automated computing machinery comprising an exemplary bridge useful in routing frames in a TRILL network using service VLAN identifiers according to embodiments of the present invention.
- FIG. 8 sets forth a diagram illustrating an exemplary method of routing frames in a TRILL network using service VLAN identifiers according to embodiments of the present invention.
- FIG. 9 sets forth a diagram illustrating a further exemplary method of routing frames in a TRILL network using service VLAN identifiers according to embodiments of the present invention.
- Typical edge bridges used in conjunction with rack-mounted equipment do not support the MAC-in-MAC encapsulation required in current shortest path backbone bridging network solutions, such as for example TRILL network solutions.
- TRILL network solutions such as for example TRILL network solutions.
- edge bridges having hardware that does not support MAC-in-MAC encapsulation can be used as part of a TRILL network solution.
- FIG. 6 sets forth a network diagram that illustrates a TRILL network having bridges that support routing frames in a TRILL network using service VLAN identifiers according to embodiments of the present invention.
- the TRILL network of FIG. 6 includes four core router-bridges (CRB)—that is, CRB- 4 602 , CRB- 5 604 , CRB- 6 606 , and CRB- 7 608 —and four edge router-bridges implemented as top-of-rack devices (T-ERB)—that is, T-ERB- 1 610 , T-ERB- 2 612 , T-ERB- 8 614 , and T-ERB- 9 616 .
- CRB core router-bridges
- T-ERB top-of-rack devices
- the TRILL network 600 interconnects customer equipment (CE)- 11 620 and CE- 31 630 .
- CE- 11 620 connects to the TRILL network 600 through T-ERB- 1 610
- CE- 31 630 connects to the TRILL network 600 through T-ERB- 8 614 .
- the network 600 of FIG. 6 is referred to as a ‘TRILL’ network in the sense that at least the core routing bridges have hardware that supports frame routing in accordance with the TRILL protocol.
- FIG. 6 illustrates frame 640 in various stages as the frame 640 traverses the networks of FIG. 6 .
- the network administrator managing CE- 11 620 and CE- 31 630 has grouped CE- 11 620 and CE- 31 630 into a customer VLAN for data communications.
- frame 640 of FIG. 6 includes a customer VLAN header 642 that includes a customer VLAN identifier (C-VID) identifying the particular customer VLAN to which the CE- 11 620 and CE- 31 630 are assigned.
- the VLAN header 642 also includes a header type (EthType) specifying that the frame is an IEEE 802.1Q compliant frame.
- the frame 640 a also includes a source MAC address (CE- 11 -SA) designating CE- 11 620 as the originator of the frame 640 a and a destination MAC address (CE- 31 -DA) designating CE- 31 630 as the destination node to which the frame 640 is transmitted.
- a source MAC address CE- 11 -SA
- CE- 31 -DA destination MAC address
- T-ERB- 1 610 receives the frame 640 a from CE- 11 620 through customer network 611 .
- T-ERB- 1 610 along with other edge bridges in the TRILL network 600 , utilizes service VLAN identifiers to route the frame 640 through the network 600 .
- This service VLAN identifier is similar to service VLAN identifiers used in 802.1ad networks for identifying a service.
- a service VLAN identifier distinguishes frames for customer networks of two or more customers that use the same customer VLAN identifier.
- the service VLAN identifier often conforms to the IEEE 802.1ad standard, but is not required to do so.
- each edge bridge 610 , 612 , 614 , and 616 is assigned a unique service VLAN identifier with which that edge bridge stores in each frame entering, or ingressing, into the network 600 from another computer network.
- the service VLAN identifiers may be assigned to each edge bridge by the service provider supplying the TRILL network 600 .
- the service VLAN identifier may be assigned to each edge bridge as part of negotiations among the bridges in the network 600 using any dynamic acquisition control protocol as will occur to those of skill in the art—much in the same way each bridge in the TRILL network 800 acquires its TRILL nickname.
- the value of the service VLAN identifier assigned to each edge bridge may be the same as the value of the TRILL nickname for that edge bridge as discussed in more detail below.
- T-ERB- 1 610 of FIG. 6 has a service VLAN identifier of “T-ERB- 1 -SVLAN.”
- the T-ERB- 1 610 of FIG. 6 adds a service VLAN identifier (T-ERB- 1 -SVLAN) for the ingress bridge node to the frame 640 b by adding a vender header 652 to the frame 640 b that includes the service VLAN identifier (T-ERB- 1 -SVLAN).
- the vender header 652 is a customized header having a format defined by the vender of T-ERB- 1 610 .
- One of skill in the art will note, however, that many different header format may be used, including header formats that are not vender-specific.
- T-ERB- 1 610 routes the frame 640 b to a next bridge in the TRILL network 600 that is on a path from the ingress bridge node 610 to the egress bridge node 614 through which the destination node 630 connects to the network 600 —that is, CRB- 5 604 .
- T-ERB- 1 610 of FIG. 6 routes the frame 640 b based on the destination node address (CE- 31 -DA) for the destination node, CE- 31 630 .
- T-ERB- 1 610 of FIG. 6 uses the destination address to identify the egress bridge 614 through which the destination node connects to the network 600 .
- T-ERB- 1 610 learns the edge bridges through which various nodes connect to the network 600 by recording the ingress node identifier-origin node address pairs for the frames that T-ERB- 1 610 receives for processing when it operates as an egress node. After identifying the egress bridge through which the destination node connects to the network 600 , then T-ERB- 1 610 identifies the next node—CRB- 5 604 —along the shortest path to the egress bridge node 614 . T-ERB- 1 610 then transmits the frame 640 b to CRB- 5 604 through the port connecting T-ERB- 1 610 to CRB- 5 604 .
- CRB- 5 604 of FIG. 6 receives the frame 640 b from the ingress bridge T-ERB- 1 610 and adds a TRILL header 654 to the frame 640 in dependence upon the service VLAN identifier (T-ERB- 1 -SVLAN) and the destination node address (CE- 31 -DA) for the destination node, CE- 31 630 .
- the TRILL header 654 is a standard header conforming to the TRILL protocol and includes an ingress bridge nickname and an egress bridge nickname.
- the value that a bridge uses for its service VLAN identifier may be the same value that the bridge uses for its TRILL nickname.
- the service VLAN identifier is distinct, or separate, from the TRILL nickname for any particular edge bridge. That is, the service VLAN identifier is generally part of a customized vender header that does not conform to the TRILL protocol, while the TRILL nickname is part of the TRILL header used to route frames according to the TRILL protocol.
- the bridges in a network generally obtain their TRILL nicknames using a dynamic nickname acquisition protocol described in the “Rbridges: Base Protocol Specification” promulgated by the TRILL Working Group, which is affiliated with the Internet Engineering Task Force.
- Having a bridge identifier in a vender header distinct from the TRILL nickname in the TRILL header allows bridges to be utilized as edge bridges in the TRILL network 600 that are not capable of encapsulating a frame with a standard TRILL header such as, for example, TRILL header 551 in FIG. 5 .
- the hardware of edge router-bridges 610 , 612 , 614 , 616 in FIG. 6 do not support the TRILL protocol. That is, the hardware of edge router-bridges 610 , 612 , 614 , 616 in FIG. 6 are not capable of encapsulating a frame with a standard TRILL header such as, for example, TRILL header 551 in FIG.
- the edge router-bridges add service VLAN identifiers that are unique for each edge router bridge in the TRILL network 600 of FIG. 6 and are supported by the hardware of those bridges.
- the ingress bridge has the ability to add these service VLAN identifiers to the frame because, although hardware of edge router-bridges 610 , 612 , 614 , 616 in FIG. 6 cannot add a TRILL header to a frame, the edge router-bridge hardware does support certain stacked headers or customized headers that allows these router-bridges to add the service VLAN identifier for the ingress bridge to the frame 640 .
- CRB- 5 604 need only add the value of the service VLAN identifier for the ingress bridge node 610 as the ingress bridge nickname in the TRILL header 654 .
- CRB- 5 604 may lookup the service VLAN identifier for the egress bridge node associated with the destination node address in a table that stores such values. The contents of this table may be updated periodically using network control protocol and may be implemented in any manner as will occur to those of ordinary skill in the art. After obtaining the SVLAN identifier for the egress bridge node, CRB- 5 604 may then add the value of the SVLAN identifier for the egress bridge node as the egress bridge nickname in the TRILL header 654 .
- CRB- 5 604 When CRB- 5 604 adds the TRILL header 654 in the example of FIG. 6 , CRB- 5 604 generally removes the vender header 652 that contains the service SVLAN identifier (T-ERB- 1 -SVLAN) because such a customized vender header 652 is not part of the standard TRILL protocol.
- the vender header may remain part of the frame as it travels through the core bridges in the TRILL network ( 600 ).
- CRB- 5 604 routes the frame 640 c to the egress bridge node through which the destination node 630 connects to the network 600 based on the ingress bridge nickname and the egress bridge nickname in the TRILL header 654 .
- CRB- 5 604 may identify the next bridge in the TRILL network 600 that is on a path from the bridge node to the egress bridge node according to the TRILL protocol.
- the next bridge in the TRILL network 600 that is on a path from the bridge node to the egress bridge node is CRB- 4 602 .
- CRB- 5 604 may then route the frame 640 c to the egress bridge node by encapsulating the frame with an Ethernet header 656 that includes the MAC address for CRB- 4 602 .
- CRB- 5 604 then routes the frame 640 c to the next bridge node, CRB- 4 602 in dependence upon the MAC address in the MAC header 656 .
- CRB- 4 602 receives the frame 640 b from the CRB- 5 604 for transmission to CE- 31 630 .
- CRB- 4 602 determines that the frame 640 traverses the egress bridge node T-ERB- 8 614 on the next network hop. Because T-ERB- 8 614 does not have the hardware to support TRILL header 654 , CRB- 4 602 replaces the TRILL header 654 with a customized vender header that includes the service VLAN identifier (ERB- 1 -SVLAN) for the ingress bridge 610 .
- CRB- 4 602 then routes the frame 640 d to the egress bridge node T-ERB- 8 614 .
- CRB- 4 602 knows that egress bridge node T-ERB- 8 614 lacks MAC-in-MAC encapsulation capabilities because those capabilities are generally broadcast to other nodes on the network 600 when egress bridge node T-ERB- 8 614 initially joins the network 600 .
- the egress bridge node T-ERB- 8 614 in FIG. 6 receives the frame 640 d from CRB- 4 602 for transmission to the destination node CE- 31 630 . Because customer networks 611 , 613 of FIG. 6 are IEEE 802.1Q networks, T-ERB- 8 614 removes the service VLAN identifier (T-ERB- 1 -SVLAN) from the frame 640 d , leaving frame 640 a . T-ERB- 8 614 then routes the frame 640 for delivery to the destination node CE- 31 630 through customer network 613 .
- T-ERB- 8 614 When T-ERB- 8 614 first receives the frame 640 , T-ERB- 8 614 records the ingress node identifier-origin node address pair. Recording this value pair allows T-ERB- 8 614 to learn that the origin node 620 is connected to the network 600 through edge bridge 610 and utilize the information in the future when T-ERB- 8 614 operates as an ingress bridge node. T-ERB- 8 614 utilizes such information as an ingress bridge node because T-ERB- 8 614 needs to know which edge bridge is the egress bridge node to determine the shortest path through the network 600 .
- the first core router-bridge that received the frame from the ingress bridge added a TRILL header to the frame.
- the core router-bridges then utilized the TRILL nicknames in the TRILL header to route the frame through the network to core bridge directly connected to the egress bridge by a single network hop.
- the other core bridge-routers that route the frame using the TRILL header need not be configured for routing frames in a TRILL network using service VLAN identifiers according to embodiments of the present invention. Rather, these router-bridges may route the frame in the standard fashion provided by the TRILL protocol. Depending on the topology of the network, therefore, standard router-bridges may be utilized along with router-bridges modified to operate in accordance with embodiments of the present invention.
- FIG. 7 sets forth a block diagram of automated computing machinery comprising an exemplary bridge 150 useful in routing frames in a TRILL network using service VLAN identifiers according to embodiments of the present invention.
- the bridge 150 of FIG. 7 is one of a plurality of bridge nodes included in the computer network. At least one of the bridge nodes in the network operates as an ingress bridge node through which the frames are received into the computer network. Also, at least one of the bridge nodes in the network operates as an egress bridge node through which the frames are transmitted out of the computer network.
- the exemplary bridge 150 includes at least one processor 156 or ‘CPU’ as well as random access memory 168 (RAM) which is connected through a high speed memory bus 166 and bus adapter 158 to the processor 156 and to other components of the exemplary bridge 150 .
- processor 156 or ‘CPU’ as well as random access memory 168 (RAM) which is connected through a high speed memory bus 166 and bus adapter 158 to the processor 156 and to other components of the exemplary bridge 150 .
- RAM random access memory
- the routing module 190 of FIG. 7 is computer program instructions for routing frames in a TRILL network using service VLAN identifiers according to embodiments of the present invention.
- the TRILL network includes a plurality of bridge nodes. At least one of the plurality of bridge nodes operates as an ingress bridge node through which the frames are received into the TRILL network. At least one of the plurality of bridge nodes operates as an egress bridge node through which the frames are transmitted out of the TRILL network.
- each ingress bridge node and each egress bridge node is assigned a unique service VLAN identifier.
- the value for the service VLAN identifier assigned to each bridge node is the same value as the TRILL nickname acquired by each bridge using a dynamic nickname acquisition protocol described in the “Rbridges: Base Protocol Specification” promulgated by the TRILL Working Group, which is affiliated with the Internet Engineering Task Force.
- the routing module 190 of FIG. 7 operates generally for routing frames in a TRILL network using service VLAN identifiers according to embodiments of the present invention by: receiving, from the ingress bridge node, a frame for transmission to a destination node, the destination node connected to the TRILL network through the egress bridge node, the received frame including a customer VLAN identifier, a service VLAN identifier for the ingress bridge node, and a destination node address for the destination node, the received frame not having MAC-in-MAC encapsulation; adding, to the frame in dependence upon the service VLAN identifier for the ingress bridge node and the destination node address for the destination node, a TRILL header conforming to the TRILL protocol, the TRILL header including an ingress bridge nickname and an egress bridge nickname; and routing, to the egress bridge node through which the destination node connects to the network, the frame in dependence upon the ingress bridge nickname and the egress bridge nickname.
- the routing module 190 of FIG. 7 also operates generally for routing frames in a TRILL network using service VLAN identifiers according to embodiments of the present invention by: receiving a frame for transmission to a destination node, the destination node connected to the network through the egress bridge node, the frame originating from a source node connected to the network through the ingress bridge node, the frame including a destination node address for the destination node and a TRILL header, the TRILL header including an ingress bridge nickname for the ingress bridge node and an egress bridge nickname for the egress bridge node; determining that the frame traverses the egress bridge node on the next hop toward the destination node; in response to the determination, replacing the TRILL header with the service VLAN identifier for the ingress bridge node; and routing, by the bridge node, the frame to the egress bridge node.
- Operating system 154 Also stored in RAM 168 is an operating system 154 .
- Operating systems useful in bridges according to embodiments of the present invention may include Juniper Networks' JUNOS® and JUNOSe®, Cisco's IOS®, or Extreme Networks' ExtremeXOS®.
- Other operating systems that may be useful in bridges according to embodiments of the present invention may include lightweight versions of UNIXTM, LinuxTM, Microsoft XPTM, and others as will occur to those of skill in the art.
- RAM 168 many components of such software typically are stored in non-volatile memory 172 also, for example, Electrically Erasable Programmable Read-Only Memory (EEPROM) or in memory of the application-specific integrated circuits (ASICs) 186 .
- EEPROM Electrically Erasable Programmable Read-Only Memory
- ASICs application-specific integrated circuits
- the bridge 150 of FIG. 7 includes a bridge interface 180 connected to the other component of the bridge 150 through the bus adapter 158 .
- the bridge interface 180 provides ports 182 through which nodes 184 connected to the bridge 150 .
- the nodes 184 may be implemented as servers, workstations, network devices, or any other computing device as will occur to those of skill in the art.
- the bridge interface 180 of FIG. 7 includes switching circuitry controlled by the processor 156 or ASICs 186 .
- the switching circuitry of the bridge interface 180 provides high-speed switching services to rapidly receive frames on one port and forward those frames on to their ultimate destination through another port.
- the switching circuitry may also provided limited processing capabilities off-loaded from the ASICs 186 or the processor 156 .
- the ASICs 186 connected to the bridge interface 180 provide certain frame processing services in an effort to offload processing from the main processor 156 .
- the ASICs 186 may be used to provide filtering, replication, forwarding, encapsulation, or de-encapsulation services. Even still, the ASICs 186 may contain and execute the routing module 190 as described above.
- the exemplary bridge 150 of FIG. 7 includes a bus adapter 158 , a computer hardware component that contains drive electronics for the high speed buses, the front side bus 162 and the memory bus 166 , as well as drive electronics for the interface bus 169 and the slower expansion bus 160 .
- the communications adapter 167 , non-volatile memory 172 , and I/O adapter 178 are connected to the other components of the exemplary bridge 150 .
- the exemplary bridge 150 of FIG. 7 includes one or more input/output (‘I/O’) adapters 178 .
- I/O adapters 178 provide components that allow the processor 156 to interface with various I/O components of the bridge.
- Exemplary I/O components may include, for example, light-emitting diodes (LEDs), liquid-crystal displays (LCDs), physical switches and buttons, or other interface components as will occur to those of skill in the art.
- the exemplary bridge 150 of FIG. 7 also includes a communications adapter 167 for data communications with other computing devices out of band from the network communications through ports 182 .
- the communications adapter 167 may provide the processor 156 with an interface according to the Universal Serial Bus (USB) specification, Small Computer System Interface (SCSI) specification, RS-232 specification, Inter-Integrated Circuit (I 2 C) bus protocol, a System Management Bus (SMBus) protocol, an Intelligent Platform Management Bus (IPMB) protocol, or the like.
- the exemplary implementation of the bridge 150 of FIG. 7 is for explanation only and not for limitation.
- Other computing architectures as will occur to those of skill in the art may also be useful for routing frames in a TRILL network using service VLAN identifiers according to embodiments of the present invention.
- the bridge may be implemented using a general-purpose computer or a specialized computing device dedicated for network frame processing, or other hybrid architectures.
- FIGS. 8-9 provide further explanation of various embodiments of the present invention as different bridges operating according to embodiments of the present invention route a frame through a TRILL network.
- FIG. 8 sets forth a flow chart illustrating an exemplary method of routing frames in a TRILL network 800 using service VLAN identifiers according to embodiments of the present invention.
- the TRILL network 800 of FIG. 8 includes a plurality of bridge nodes 810 , 812 , 814 , 816 , 818 .
- bridge node 810 operates as an ingress bridge node through which the frames are received into the TRILL network 800
- bridge node 818 operates as an egress bridge node through which the frames are transmitted out of the TRILL network 800 .
- the hardware of the ingress bridge node 810 and hardware of the egress bridge node 818 do not support MAC-in-MAC encapsulation, and thus are unable to support the TRILL protocol at the hardware level.
- the bridge node 812 of FIG. 8 includes twelve ports 900 a - l through which other nodes may connect to the bridge node 812 .
- the ingress bridge node 810 connects to the bridge node 812 through port 900 b .
- Core bridge node 816 connects to the bridge node 812 through port 900 k.
- the method of FIG. 8 includes receiving 902 , by the bridge node 812 from the ingress bridge node 810 , a frame 822 for transmission to a destination node 808 .
- the destination node 808 connects to the TRILL network 800 through customer network 805 and the egress bridge node 818 .
- the bridge node 812 may receive 902 the frame 822 from the ingress bridge node 810 according to the method of FIG. 8 by retrieving the frame 822 a from a reception stack for port 900 b and advancing the stack pointer for the reception stack.
- the frame 822 a of FIG. 8 specifies a source node address 826 for the source node (not shown) originating the frame 822 a and a destination node address 824 for a destination node 808 to which the frame 822 is transmitted.
- the source and destination node addresses 826 , 824 may be implemented as MAC addresses.
- the frame 822 a also includes a customer VLAN identifier 823 that the equipment on the customer network uses to assign the frame 822 to a particular VLAN established across one or more customer networks.
- the frame 822 a further includes a vender header 830 that specifies a service VLAN identifier 831 .
- the service VLAN identifier 831 of FIG. 8 and the frame 822 a generally conform to the IEEE 802.1ad standard, but one of ordinary skill in the art will recognize that such conformance is not a required feature in embodiments of the present invention.
- the method of FIG. 8 also includes adding 904 , by the bridge node 812 to the frame 822 in dependence upon the service VLAN identifier 831 for the ingress bridge node 810 and the destination node address 824 for the destination node 808 , a TRILL header 1003 conforming to the TRILL protocol.
- the TRILL header 1003 includes an ingress bridge nickname 1004 and an egress bridge nickname 1006 .
- the values for the ingress bridge nickname 1004 and the egress bridge nickname 1006 may be the same as the values of the service VLAN identifiers for the ingress bridge 810 and the egress bridge 818 , respectively.
- the bridge node 812 may add 904 the ingress bridge nickname 1004 according to the method of FIG.
- the bridge node 812 may add 904 the egress bridge nickname 1006 according to the method of FIG. 8 by looking up in the network topology 1105 the nickname for the edge bridge through which the destination node 808 connects to the network 800 and storing that value as the egress bridge nickname 1006 in the TRILL header 1003 .
- the network topology 1105 of FIG. 8 is a table that maintains the network topology for network 800 which defines the data communications connections among the nodes in the network 800 .
- the bridge nodes determines the data communications connections among the nodes based on the control frames exchanged among the nodes according to a control protocol such as, for example, the Intermediate System to Intermediate System (“IS-IS”) protocol.
- the network topology 1105 also associates the edge bridges with the nodes outside of the network 800 that send or receive frames through the network 800 .
- Such a network topology may be implemented and periodically updated in any manner as will occur to those of ordinary skill.
- the method of FIG. 8 includes routing 906 , by the bridge node 812 to the egress bridge node 818 through which the destination node 808 connects to the network 800 , the frame 822 b in dependence upon the ingress bridge nickname 1004 and the egress bridge nickname 1006 .
- the bridge node 812 may route 906 the frame 822 b based on the ingress bridge nickname 1004 and the egress bridge nickname 1006 according to the method of FIG. 8 by encapsulating the frame 822 b with an Ethernet header 908 .
- the Ethernet header 908 includes a MAC address for a next bridge in the network 800 that is on a path from the bridge node 812 to the egress bridge node 818 —that is, bridge 816 .
- the bridge node 812 uses the forwarding tables 1005 established in accordance with the TRILL specification to identify the next bridge in the network 800 that is on the shortest path from the ingress bridge node 810 to the egress bridge node 818 .
- Each bridge has a set of forwarding tables customized for that bridge's location in the topology of the network 800 for routing frames between different pairs of edge bridges.
- the bridge node 812 can use the ingress bridge nickname 1004 and the egress bridge nickname 1006 to locate the next node along the path between any pair of ingress and egress nodes.
- the bridge node 812 may route the frame 822 b to the next bridge node using the MAC address 910 of that next node by placing the frame 822 b in the transmission stack for the port 900 k corresponding to MAC address 910 .
- the bridge interface such as the bridge interface described with reference to FIG. 7 , sends the frame 822 out from the appropriate port 900 k to the next bridge—that is, bridge 816 .
- bridge 812 receives the frame 822 a from edge bridge 810 in the TRILL network 800
- the received frame 822 a does not already have a TRILL header or an additional MAC address for TRILL network equipment based on the TRILL header.
- the frame 822 does not utilize MAC-in-MAC encapsulation as the frame 822 traverse the first hop in the TRILL network 800 .
- This allows the TRILL network 800 to use bridges with hardware that does not support MAC-in-MAC encapsulation as edge bridges. Because the current generation of bridges does not support MAC-in-MAC encapsulation, the ability to use existing bridges as edges bridges in a TRILL network reduces the financial costs of implementing a TRILL network solution.
- FIG. 9 sets forth a flow chart illustrating a further exemplary method of routing frames in a TRILL network 800 using service VLAN identifiers according to embodiments of the present invention.
- the network topology of FIG. 9 is similar to the topology in FIG. 8 .
- the TRILL network 800 of FIG. 9 includes a plurality of bridge nodes 810 , 812 , 816 , 818 .
- bridge node 810 operates as an ingress bridge node through which the frames are received into the TRILL network 800
- bridge node 818 operates as an egress bridge node through which the frames are transmitted out of the TRILL network 800 .
- Each ingress bridge node and each egress bridge node is assigned a unique service VLAN identifier.
- the bridge nodes 812 , 816 of FIG. 9 operate as core bridges.
- the hardware of the ingress bridge node 810 and hardware of the egress bridge node 818 do not support MAC-in-MAC encapsulation, and thus are unable to support the TRILL protocol.
- the bridge node 816 of FIG. 9 includes twelve ports 1100 a - 1 through which other nodes may connect to the bridge node 816 .
- the core bridge node 812 connects to the bridge node 816 through port 1100 c .
- Egress bridge node 818 connects to the bridge node 816 through port 1100 i.
- the method of FIG. 9 includes receiving 1102 , by bridge node 816 , a frame 822 for transmission to a destination node 808 .
- the destination node 808 of FIG. 9 connects to the network 800 through the egress bridge node 818 and customer network 805 .
- the frame 822 specifies the source node address 826 of the source node originating the frame 822 and the destination node address 824 of the destination node 808 .
- the frame 822 has a TRILL header 1003 that includes an ingress bridge nickname 1004 and an egress bridge nickname 1006 .
- the frame 822 also includes an Ethernet header 908 that includes a MAC address 910 of the bridge node 816 —all similar to those described above with reference to FIG. 8 .
- the bridge node 816 may receive 1102 the frame 822 b according to the method of FIG. 9 by retrieving the frame 822 d from a reception stack for port 1100 c and advancing the stack pointer for the reception stack.
- the reception stack may be implemented as a buffer into which frames received from a port 1100 are placed until those frames are processed by the bridge 816 .
- the method of FIG. 9 includes determining 1104 , by the bridge node 816 , that the frame 822 traverses the egress bridge node 816 on the next network hop.
- the bridge node 816 may determine 1104 that the frame 822 traverses the egress bridge node 816 on the next network hop using network topology 1105 , which may be obtained and implemented in a manner as will occur to those of skill in the art, particularly through a dynamic control protocol that periodically detects changes in the network topology.
- the method of FIG. 9 includes replacing 1108 , by the bridge node 816 in response to the determination, the TRILL header 1003 with the service VLAN identifier 831 . Because the TRILL nicknames and the service VLAN identifiers may be implemented using the same values, the bridge node 816 may replace 1108 the TRILL header 1003 with service VLAN identifier 831 according to the method of FIG. 9 by removing the TRILL header 1003 and the Ethernet header 908 and adding a vender header 830 to the frame 822 c that includes the value of the ingress bridge nickname 1004 as the service VLAN identifier 831 .
- the bridge 816 may use a lookup table that associates service VLAN identifiers for edge nodes with their corresponding TRILL nicknames.
- the lookup table may be implemented in any manner as will occur to those of skill in the art and periodically updated using a network control protocol or other such mechanism as will occur to those of skill in the art.
- the method of FIG. 9 includes routing 1110 , by the bridge node 816 , the frame 822 to the egress bridge node 816 .
- the bridge node 816 may route 1110 the frame 822 to the egress bridge node 816 according to the method of FIG. 9 by storing the frame 822 in the transmission stack for the port 1100 i corresponding the next bridge 818 .
- the bridge interface such as the bridge interface described with reference to FIG. 7 , sends the frame 822 out from the appropriate port 1100 i to the egress bridge 818 .
- the service VLAN identifier 831 is part of a customized or stacked vender header that does not conform with IEEE 802.1Q. Because the customer network of FIG. 8 is a IEEE 802.1Q compliant network, the egress bridge node 818 removes the vender header 830 from the frame 822 before sending the frame 822 to the destination node 808 .
- the frame 822 is essentially transformed from a TRILL frame with MAC-in-MAC encapsulation into a frame with stack headers that does not utilize MAC-in-MAC encapsulation, typically an IEEE802.1ad compliant frame.
- This allows the TRILL network 800 to use bridges with hardware that does not support MAC-in-MAC encapsulation as edge bridges. Because the current generation of bridges does not support MAC-in-MAC encapsulation, the ability to use existing bridges as edges bridges in a TRILL network reduces the financial costs of implementing a TRILL network solution.
- egress bridge 818 When egress bridge 818 receives the frame 822 , egress bridge 818 records the ingress node identifier (Customer VLAN ID 823 )-origin node address (Source Address 826 ) pair. Recording this value pair allows egress bridge 818 to learn that the origin node (not shown) is connected to the network 800 through edge bridge 810 and utilize the information in the future when egress bridge 818 operates as an ingress bridge node. Egress bridge 818 utilizes such information as an ingress bridge node because edge bridge 818 needs to know which edge bridge is the egress bridge node to determine the shortest path through the network 800 .
- Exemplary embodiments of the present invention are described largely in the context of a fully functional network bridges configured for routing frames in a TRILL network using service VLAN identifiers.
- One of skill in the art will recognize, however, that the present invention also may be embodied in a computer program product disposed on computer readable media for use with any suitable data processing system.
- Such computer readable media may be transmission media or recordable media for machine-readable information, including magnetic media, optical media, or other suitable media. Examples of recordable media include magnetic disks in hard drives or diskettes, compact disks for optical drives, magnetic tape, and others as will occur to those of skill in the art.
- transmission media examples include telephone networks for voice communications and digital data communications networks such as, for example, EthernetsTM and networks that communicate with the Internet Protocol and the World Wide Web as well as wireless transmission media such as, for example, networks implemented according to the IEEE 802.11 family of specifications.
- any computer system having suitable programming means will be capable of executing the steps of the method of the invention as embodied in a program product.
- Persons skilled in the art will recognize immediately that, although some of the exemplary embodiments described in this specification are oriented to software installed and executing on computer hardware, nevertheless, alternative embodiments implemented as firmware or as hardware are well within the scope of the present invention.
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Computer Security & Cryptography (AREA)
- Small-Scale Networks (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
- Mobile Radio Communication Systems (AREA)
Abstract
Description
- This application is related to U.S. patent application Ser. No. 12/344,644 filed Dec. 29, 2008, which Applicants hereby incorporate by reference in its entirety.
- The present invention relates to the field of computer networking, and in particular to a technique for routing frames in a Transparent Interconnection of Lots of Links (TRILL) network using service virtual local area network (VLAN) identifiers.
- Early computer networks consisted of a small number of devices attached together using a single cable. Computer networks have since evolved, however, beyond a simple collection of attached devices. Current computer networks may connect thousands of devices spread across large local areas, and these local area networks may in turn be connected together to form still larger networks such as, for example, the Internet.
- Today's computer networks often interconnect widely-disparate devices distributed throughout multiple local networks into a single virtual network. Virtual networking technology allows devices located on a single physical network to operate as part of multiple virtual networks. Such virtual networks provide flexibility not available in early computer networks and allow network administrators to create layers of abstraction to simply complex network topologies. For example, using a virtual network, an enterprise may have a virtual blade server chassis with routers spread across multiple physical locations that effectively acts as a single router, allowing a data center split across multiple sites to act as if the data center is a single site.
- The predominate standard used to construct and access today's computer networks is Ethernet. Ethernet is a family of frame-based computer networking technologies for local area networks. Ethernet is promulgated by Institute of Electrical and Electronics Engineers (IEEE) in various standards specifications as part of the IEEE 802 family of standards. Ethernet defines a number of wiring and signaling standards for the Physical Layer of the Open Systems Interconnection (OSI) Networking Model, the means for network access at the Media Access Control (MAC) and Data Link Layer, and a common addressing format. At the physical layer, Ethernet networks are ubiquitous, carrying all kinds of traffic over multiple types of physical connections (wired or wireless), including 10 Mbps, 100 Mbps, 1 Gbps, 10 Gbps, 100 Gbps connections. The Ethernet service layer, generally referred to as Layer-2 because it is the MAC and Data Link Layer in the OSI networking model, provides the services generally required by a network. These network services typically include filtering, replication, forwarding broadcast, unicast, and multicast (BUM) traffic, and following a serviced topology, which may include virtual local area networks (VLANs), ATM segments of VLANs based on the ATM Lane Standard (ELANs), Ethernet Private Lines (ELINEs), and rooted multipoint Ethernet virtual connections (ETREEs).
- VLAN services are specified in the IEEE 802.1Q standard and allow enterprise customers to configure various computing devices to communicate as if those devices were attached to the same broadcast domain, regardless of their physical locations. VLANs provide segmentation services traditionally provided by routers in local area network (LAN) configurations and address issues such as scalability, security, and network management. Bridges in VLAN topologies enforce the integrity of VLAN broadcast domains because such bridges are not permitted to bridge network traffic between VLANs. In this way, VLANs may provide broadcast filtering, security, address summarization, and traffic flow management. Network administrators may use VLANs to create
multiple Layer 3 networks on the same Layer-2 bridge. For example if a Dynamic Host Configuration Protocol (DHCP) server, which broadcasts its presence, were plugged into a bridge, the DHCP server would serve any host device connected to the bridge. By using VLANs, however, a network administrator may easily split up the devices on the network so that some hosts will not use that DHCP server and will default to link-local addresses. - Because enterprise customers often have multiple networks distributed across multiple physical sites, customer's typically connected these physically separate networks together through the network of a network provider. For example, a company may connect its network at site A to its network at site B through a network provided by a telecommunications company. Despite the customer networks being connected through a provider network, devices on the different customer networks may still use VLAN services to communicate through the provider's network as though the devices were all located on the same LAN.
- For the same reasons that enterprise customers take advantage of the VLAN services described in the IEEE 802.1Q specification, network providers also take advantage of VLAN services to provide flexibility, security, traffic flow management, and reduce their network administration burden. The drawback, however, is that under the IEEE 802.1Q specification, there are only 4096 identifiers available to specify different VLANs. Thus, a network provider and all the customers that provider serves must share the 4096 VLAN identifiers.
- Because industry participants deemed such a limited number of VLAN identifiers inadequate to meet the needs of both customers and providers, the IEEE 802.1Q standard was amended by the IEEE 802.ad standard, often referred to as “Q-in-Q” or “stacked VLANs.” The IEEE 802.ad standard sets forth an architecture and bridge protocol to provide separate instances of MAC network services to multiple independent users of a provider network in a manner that does not require cooperation among the customers, and requires a minimum of cooperation between the customers and the provider of the MAC network service. Q-in-Q provides customers with the ability to configure their own VLANs inside the VLAN provided to the customer by a service provider. In such a manner, the service provider may configure one service VLAN for the customer, and the customer can utilize that service VLAN to establish multiple customer VLANs.
- In a manner similar to enterprise customers, network service providers often maintain multiple provider network domains, which are bridged together using a provider backbone bridging network. IEEE promulgates specifications for such a provider backbone bridging network in the IEEE 802.1ah standard. IEEE 802.1ah compliant networks provide complete separation of customer and service provider domains by encapsulating Ethernet frames with a service provider MAC header. Because the Ethernet frames are originally encapsulated in the customer network with a customer MAC header, this subsequent encapsulation with a service provider MAC header is often referred to as ‘MAC-in-MAC encapsulation.’ Using MAC-in-MAC encapsulation, Ethernet frames being sent in a customer's network from one domain to another through multiple service provider network domains contain two MAC headers. The customer MAC header provides routing information to the bridges in the customer's networks, while the service provider MAC header provides routing information to the bridges in the service provider's backbone bridging network.
- To provide an overview of Ethernet header stacking of encapsulation,
FIG. 1 sets forth a line drawing that illustrates exemplary Ethernet frame structures compliant with the IEEE 802.1 family of standards.FIG. 1 illustrates a traditional Ethernetframe 100 implemented in a customer's network according to the IEEE 802.1D standard. Thecustomer frame 100 consists of apayload 101, a header type (EthType) 102 indicating thatframe 100 is an 802.1D frame, a customer network source MAC address (C-SA) 103, and a customer network destination MAC address (C-DA) 104. The customer networksource MAC address 103 specifies the source node in the customer network that originates theframe 100, while the customer networkdestination MAC address 104 specifies the destination node in the customer network to which the frame is bound for delivery. - As mentioned above, a customer may organize the nodes into varies VLANs to provide traffic flow management, security, ease network administration, and the like. VLANs established by a customer for use within the customer's networks are generally referred to a ‘customer VLANs.’ In a network using customer VLANs,
frame 100 is encapsulated asframe 110 to include a customer VLAN identifier (C-VID) 115 and a new header type (EthType) 116, indicating that theframe 110 is an 802.1Q frame. As used in this application, encapsulation may allow additional fields to be placed in any position relative to the encapsulated object, including interior to the original object, and does not require the additional fields be placed surrounding or at either end of the encapsulated object. - In a provider bridge (PB) network that bridges two customer networks, the
frame 110 is further encapsulated as shown byframe 120, adding new fields for: a service VLAN identifier (S-VID) 127, and a new header type (EthType) 128 indicating theframe 120 is IEEE 802.1ad compliant. In a provider backbone bridging (PBB) network that bridges multiple PB networks, theframe 120 is further encapsulated to add additional fields for: a service identifier (I-SID) 131, a new header type (EthType) 132 corresponding to theservice identifier 131, a backbone VLAN identifier 133, an additional header type (EthType) 134 indicating that theframe 130 is IEEE 802.1ah compliant, a backbone source MAC address (B-SA) 135 specifying the bridge through which the frame ingresses into the PBB network, and a backbone destination MAC address (B-DA) 136 specifying the bridge through which the frame egresses the PBB network. - For further explanation of header stacking or encapsulation in a IEEE 802.1ad provider bridge network,
FIGS. 2 and 3 set forth network diagrams that illustrate an exemplaryprovider bridge network 200 interconnecting exemplary networks for customers A and B (201 and 202, respectively). InFIGS. 2 and 3 , customer A 201 maintains threenetworks networks provider bridge network 200 consists of six bridges, four provider edge bridges (PEB) 1-4 and two provider core bridges (PCB) 1-2. An edge bridge is a bridge through which frames ingress and egress thenetwork 200—that is, an edge bridge is positioned at the ‘edge’ of the network topology. A core bridge is a bridge used to interconnect one or more edge bridges. -
FIG. 2 illustrates a frame 220 at several stages as the frame 220 traverses the networks ofFIG. 2 from customer equipment (CE)-11 210 innetwork 203 of customer A 201 to CE-31 212 innetwork 205 of customer A 201. InFIG. 2 , the communications between CE-11 210 and CE-31 212 are implemented using a customer VLAN, and so theframe 220 a from CE-11 210 is encapsulated with acustomer VLAN header 230 that includes a customer VLAN identifier (C-VID) and a header type (EthType) specifying that theframe 220 a is an IEEE 802.1Q compliant frame. The frame 220 includes a source MAC address (CE-11-SA) for CE-11 210, which indicates that CE-11 210 originated theframe 220 a, and a destination MAC address (CE-31-DA) for CE-31 212, which indicates that the frame 220 is destined for CE-31 212. - When provider edge bridge (PEB)-1 240 receives the
frame 220 a, PEB-1 240 encapsulates theframe 220 a into an 802.1ad frame 220 b by adding aservice VLAN header 231 to the frame 220. Theservice VLAN header 231 includes a service VLAN identifier (S-VID-A) assigned by the provider to customer A 201 and a header type (EthType) specifying that the frame is IEEE 802.1ad compliant. Using the service VLAN identifier to identify devices in thenetworks provider network 200 from the PEB-1 240 through which the frame 220 ingresses thenetwork 200 to the PEB-3 242 through which the frame 220 egresses thenetwork 200. PEB-3 242 then de-encapsulates theframe 220 b by removing to serviceVLAN header 231, leaving IEEE 802.1Qcompliant frame 220 a for delivery to CE-31 212. - Similarly, in
FIG. 3 , computing device CE-15 310 innetwork 204 of customer B 202 sends an IEEE 802.1Qcompliant frame 320 a to device CE-25 312 customer B'snetwork 206. At PEB-1 240, frame 320 a is encapsulated with aservice VLAN header 331. Theservice VLAN header 331 includes a service VLAN identifier (S-VID-B) assigned by the service provider to customer B 202 and a header type (EthType) specifying that the frame is IEEE 802.1ad compliant. Theingress bridge 240 of theprovider network 200 forwards theframe 320 b to theegress bridge 342 of theprovider network 200, which in turn de-encapsulates theframe 320 b by removing theservice VLAN header 331, leaving IEEE 802.1Qcompliant frame 320 a for delivery to CE-35 312. As the provider bridges receive various frames on their ports, the bridges learn the MAC addresses of the devices in customer B network by monitoring the MAC addresses associated with each service VLAN identifier assigned to customer B 202 by the network provider. - From the description above, one of ordinary skill in the art will note that in a provider bridge network, the service provider uses one or more SVLANs to transport frames for a customer's VLANs between multiple customer networks. To determine the forwarding path for each service VLAN through the provider's bridge network, the provider bridges often use the Generic VLAN registration protocol (GVRP) or the Multiple VLAN Registration Protocol (MVRP). For multicast traffic containment, provider bridges may use the Generic Attribute Registration Protocol Multicast Registration Protocol (GMRP) or the Multiple Multicast Registration Protocol (MMRP). For purposes of forwarding traffic, provider edge bridges learn all customer equipment MAC addresses and forward customer frames based on service VLAN identifier and customer VLAN identifier pairs, while provider core bridges learn all customer equipment MAC addresses, but forward customer frames based only on the service VLAN identifiers. Within a particular provider bridge network, a given customer equipment MAC address is at the same site for all service VLANs.
- Even with the stacked VLAN protocols, provider bridge networks have scaling problems. Because only 4,096 service VLAN identifiers are available under current protocols, provider bridge networks are limited in the number of customer networks they can serve effectively and efficiently. Further, because provider bridges learn the MAC addresses for all customer devices, scaling issues often arise when a provider serves one or more customers with large virtual networks. In addition, there is a potential for interaction between customer and service provider control protocols.
- Provider Backbone Bridge (PBB) Networks are one attempt to alleviate these issues because PBB networks allow a service provider to partition a large provider bridge network into several smaller provider bridge networks that are interconnected by the PBB network. For further explanation,
FIG. 4 sets forth a network diagram that illustrates an exemplary providerbackbone bridge network 400 interconnecting exemplaryprovider bridge networks PBB network 400 ofFIG. 4 consists of four provider backbone edge bridges (BEB)—that is, BEB-11 416, BEB-12 418, BEB-21 434, and BEB-22 436—and two provider backbone core bridges (BCB)—that is, BCB-1 401 and BCB-2 402. -
FIG. 4 illustrates a frame 412 at several stages as the frame 412 traverses the networks ofFIG. 4 from customer equipment (CE)-11 411 to CE-34 431. The customer utilizing thePB networks PBB network 400 has grouped CE-11 411 and CE-34 431 in the same customer VLAN. Thus, frame 412 a from CE-11 411 includes acustomer VLAN header 415. Thecustomer VLAN header 415 includes the customer VLAN identifier (C-VID) assigned by the customer for the customer VLAN and a header type (EthType) that specifies that theframe 412 a is IEEE 802.1Q compliant. - When the
frame 412 a reaches the provider edge bridge (PEB)-11 413, PEB-11 413 encapsulates the frame with aservice VLAN header 417. Theservice VLAN header 417 includes the service VLAN identifier (S-VID) assigned to the customer by the network provider and a header type (EthType) that specifies that theframe 412 a is IEEE 802.1ad compliant. - When the
frame 412 b reaches the provider backbone edge bridge (BEB)-11 416, BEB-11 416 encapsulates the frame with abackbone header 419. Thebackbone header 419 includes a service identifier (I-SID), a new header type (EthType) corresponding to the service identifier, a backbone VLAN identifier, an additional header type (EthType) indicating that theframe 412 c is IEEE 802.1ah compliant, a backbone source MAC address (BEB-11-SA) specifying the backbone edge bridge through which the frame ingresses into thePBB network 400, and a backbone destination MAC address (BEB-22-DA) specifying thebackbone edge bridge 436 through which the frame egresses thePBB network 400. - The
frame 412 c is routed through the providerbackbone bridge network 400 from the ingress bridge, BEB-11 416, to the egress bridge, BEB-22 436. BEB-22 436 de-encapsulates theframe 412 c by removing thebackbone header 419, leaving the frame 412 IEEE 802.1ad compliant. BEB-22 436 then sends the frame 412 along to PEB-31 433 in the IEEE 802.1ad compliantprovider bridge network 430. PEB-31 433 further de-encapsulates the frame 412 by removing theservice VLAN header 417, leaving the frame 412 IEEE 802.1Q compliant. PEB-31 433 then forwards the frame 412 along to CE-34 431 for delivery. - In a provider backbone bridge network, there is clear demarcation between customer and service provider domains. MAC address learning for customer equipment is limited to the provider edge bridge, and the I-SID field allows separation of Ethernet as a service from Ethernet as infrastructure.
- As mentioned above, the networking architectures described by the IEEE 802.1Q, 802.1ad, and 802.1ah standards allow enterprise customers to establish multiple networks that are geographically dispersed, yet operate as a single virtual network. These physically separate LANs communicate through PB and PBB networks using forwarding trees established using a spanning tree protocol. The spanning tree protocol is an OSI Layer-2 protocol that ensures a loop-free topology for any bridged LAN. This protocol allows a network design to include spare (redundant) links to provide automatic backup paths if an active link fails, without the danger of bridge loops, or the need for manual enabling or disabling of these backup links. Bridge loops must be avoided because such loops result in traffic that floods the network. The spanning tree protocol is defined in the IEEE 802.1D standard, and, as the name suggests, it creates a spanning tree within a mesh network of connected Layer-2 bridges, and disables those links that are not part of the tree, leaving a single active path between any two network nodes.
- There are certain disadvantages to the spanning tree protocol used in the networks described above with reference to
FIGS. 1-4 . Because the spanning tree protocol disables links that are not part of the forwarding tree, bottlenecks are often created by concentrating traffic onto selected links. Also, due to the nature of the spanning tree protocol temporary loops may develop if spanning tree messages are lost or as the network topology changes because nodes are brought on-line or taken off-line or moved in the network. During periods when temporary loops exists, frames may flood the network because the standard Ethernet header does not contain a time-to-live field or hop count that specifies when a frame has become stale and should be discarded. Further, the paths developed between nodes of the network are not necessarily the pair-wise shortest path, but rather are the paths that remain after the spanning tree protocol eliminates redundant paths. - In an attempt to create a network solution without the disadvantages of the spanning tree protocol, the Internet Engineering Task Force (IETF) has sought developed additional protocols. One such protocol is the “Transparent Interconnection of Lots of Links” (TRILL) protocol. The TRILL protocol and other similar specifications require the use of router-bridges (R-Bridges) to routes frames hop-by-hop through the network along the shortest path to the frames destination in the network, e.g., the network's edge bridge. For further explanation,
FIG. 5 sets forth a network diagram that illustrates anexemplary TRILL network 500, also known as a router-bridge network, because the devices behave as both a router and a bridge at the ISO Layer-2 level. TheTRILL network 500 includes three core router-bridges (CRB)—that is, CRB-4 540, CRB-5 542, and CRB-6 544—as well as five edge router-bridges (ERB)—that is, ERB-1 530, ERB-2 532, ERB-8 534, ERB-9 536, and ERB-7 538. TheTRILL network 500 is provided to customers by a network provider. The edges of theTRILL network 500 typically extend into the datacenter where the customer equipment is housed. In fact, often each equipment rack includes a bridge that operates as an edge of theTRILL network 500. These TRILL networks can extend throughout one or more datacenters to interconnect various networks. - The
TRILL network 500 ofFIG. 5 interconnects two IEEE 802.1Q networks Q network 510 is connected to theTRILL network 500 through ERB-1 530 and ERB-2 532. 802.1Q network 520 is connected to theTRILL network 500 through ERB-8 534 and ERB-536. 802.1Q network 510 includes a legacy bridge (LB)-55 514 and a enterprise bridge (EB)-16 516, neither of which are TRILL compliant. 802.1Q network 520 includes EB-85 524 and EB-96 526. End point devices include customer equipment (CE)-11 512 connected to LB-55 514, CE-31 522 connected to EB-85 524, and CE-77 539 connected to ERB-7 538. End point devices CE-11 512, CE-31 522, and CE-77 539 can be any type of computing device, including workstations, servers, network devices, and so on. -
FIG. 5 illustrates a frame 518 at several stages as the frame 518 traverses the networks ofFIG. 5 from CE-11 512 to CE-31 522. The customer utilizing theTRILL network 500 to bridge multiple 802.1Q networks has grouped CE-11 512 and CE-31 522 in the same customer VLAN. Thus, frame 518 a sent by LB-55 514 for CE-11 512 includes acustomer VLAN header 519. Thecustomer VLAN header 519 includes the customer VLAN identifier (C-VID) assigned by the customer for the customer VLAN and a header type (EthType) that specifies that theframe 518 a is IEEE 802.1Q compliant. - When the
frame 518 a reaches the ERB-1 530, ERB-1 530 encapsulates the frame 518 with aTRILL header 551. TheTRILL header 551 includes a TRILL source nickname (ERB-1-SN) specifying ERB-1 as the ingress edge router-bridge for the frame 518, a TRILL destination nickname (ERB-8-DN) specifying ERB-8 534 as the egress edge router-bridge for the frame 518, various TRILL flags, a hop count, and a header type (EthType) indicating thatframe 518 b is a TRILL frame. TRILL nicknames are assigned to every router-bridge in a TRILL network using a dynamic nickname acquisition protocol or other protocols as will occur to those of skill in the art. - To provide the hop-by-hop routing in accordance with the TRILL protocol, ERB-1 530 uses MAC-in-MAC encapsulation to add an
Ethernet MAC header 552 to frame 518. TheMAC header 552 includes a outer transport VLAN identifier (OT-VLAN-ID), a header type (EthType), a source MAC address (ERB-1-SA) specifying ERB-1 530 as the node transmitting theframe 518 b on the next network hop through thenetwork 500, and a destination MAC address (CRB-5-DA) specifying CRB-5 542 as the node receiving theframe 518 b on the next network hop through thenetwork 500. ERB-1 530 then sends the frame 518 to CRB-5 542, which routes the frame through theTRILL network 500 to CRB-4 540 based on a shortest path to ERB-8 534. As the frame traverses theTRILL network 500, theMAC header 552 is changed at each hop to update the source and destination MAC addresses for the next network hop. Accordingly, when theframe 518 c passes from CRB-4 540 to ERB-8 534, the frame 518 includesMAC header 562. TheMAC header 562 ofFIG. 5 includes a source MAC address (CRB-4-SA) specifying CRB-4 540 as the node transmitting theframe 518 c on the next network hop through thenetwork 500 and a destination MAC address (ERB-8-DA) specifying ERB-8 534 as the node receiving theframe 518 c on the next network hop through thenetwork 500. Upon receiving theframe 518 c, ERB-8 534 de-encapsulates the frame 518 by removing theMAC header 562 and theTRILL header 551, leavingframe 518 a for delivery to CE-31 522 through EB-85 524. - The
TRILL network 500 ofFIG. 5 operates as a massive switch fabric from the perspective of the customer network. Frames enter the TRILL network at an ingress bridge and are routed along the shortest path hop-by-hop through the TRILL network to an egress bridge for delivery to a customer network. As the bridges in the TRILL network learn the MAC address of the customer equipment in the customer networks to which the TRILL bridges connect, the TRILL bridges share information among one another about which customer MAC addresses related to which TRILL bridge nickname. ISO Layer-2 frames with known unicast addresses are routed hop-by-hop based on TRILL nicknames of the ingress and egress edge router-bridges by the transit or core router-bridges. ISO Layer-2 multicast traffic can also be routed hop-by-hop based on multicast distribution trees. - In addition to TRILL, there are other provider bridging protocols such as Shortest Path Provider Backbone Bridging (SPPBB) described in IEEE 802.1aq that represent attempts by industry participants to utilize the shortest path through the network to forward frames between edge bridges. One feature common to all of these solutions however, whether TRILL, SPPBB, or any other, is the use of MAC-in-MAC encapsulation. Unfortunately, current generation hardware for typical rack-mounted bridges, that form the edge of these networks, do not support MAC-in-MAC encapsulation, thereby limiting the use of TRILL, SPPBB, and similar solutions that provide shortest path routing at Layer-2 level.
- Methods, apparatus, and products are disclosed for routing frames in a TRILL network using service VLAN identifiers. Routing frames in a TRILL network using service VLAN identifiers according to embodiments of the present invention advantageously does not require edge bridges that support MAC-in-MAC encapsulation to overcome the 4096 VLAN identifier limitation across multiple, interconnected IEEE 802.1 Q networks. Rather, such edge bridges need only be updated with software improved for routing frames using bridge identifiers according to embodiments of the present invention. In this manner, existing rack-mounted bridges may be utilized as edge bridges in networks that require MAC-in-MAC encapsulation to provide shortest path forwarding services such as, for example, TRILL networks or SPB networks.
- In accordance with embodiments of the present invention, the TRILL network in which frames are routed using service VLAN identifiers includes a plurality of bridge nodes. At least one of the bridge nodes operates as an ingress bridge node through which frames are received into the network. At least one of the bridge nodes operates as an egress bridge node through which frames are transmitted out of the network. A bridge node in the network receives a frame from the ingress bridge node for transmission to a destination node. The destination node is connected to the TRILL network through the egress bridge node, and the source node originating the frame is connected to the TRILL network through the ingress bridge node. The received frame includes a customer VLAN identifier, a service VLAN identifier for the ingress bridge node, and a destination node address for the destination node. As received, the frame does not utilize MAC-in-MAC encapsulation at this point. Rather, the bridge node uses the service VLAN identifier for the ingress bridge node and the destination node address for the destination node to add a TRILL header to the frame that conforms with the TRILL protocol. The TRILL header includes an ingress bridge nickname and an egress bridge nickname. The bridge node then routes the frame to the egress bridge node through which the destination node connects to the network in dependence upon the ingress bridge nickname and the egress bridge nickname.
- In accordance with embodiments of the present invention, the frame eventually traverses through the TRILL network to reach a bridge node connected to the egress bridge node by a single hop. The bridge node connected to the egress bridge node by a single hop receives the frame for transmission to a destination node. The frame includes a destination node address for the destination node and a TRILL header, which in turn includes an ingress bridge nickname for the ingress bridge node and an egress bridge nickname for the egress bridge node. The bridge node determines that the frame traverses the egress bridge node on the next hop toward the destination node. Based on this determination, the bridge node replaces the TRILL header with the service VLAN identifier for the ingress bridge node and routes the frame to the egress bridge node. The egress bridge node may then route the frame to the destination node.
- The foregoing and other objects, features and advantages of the invention will be apparent from the following more particular descriptions of exemplary embodiments of the invention as illustrated in the accompanying drawings wherein like reference numbers generally represent like parts of exemplary embodiments of the invention.
- The accompanying drawings, which are incorporated in and constitute a part of this specification, illustrate implementations consistent with the present invention and, together with the detailed description, serve to explain advantages and principles consistent with the invention.
-
FIG. 1 sets forth a line drawing that illustrates exemplary Ethernet frame structures compliant with the IEEE 802.1 family of standards. -
FIG. 2 sets forth a network diagram that illustrates an exemplary provider bridge network interconnecting exemplary customer networks. -
FIG. 3 sets forth a network diagram that illustrates an exemplary provider bridge network interconnecting exemplary customer networks. -
FIG. 4 sets forth a network diagram that illustrates an exemplary provider backbone bridge network interconnecting exemplary provider bridge networks. -
FIG. 5 sets forth a network diagram that illustrates an exemplary TRILL network. -
FIG. 6 sets forth a network diagram that illustrates a TRILL network having bridges that support routing frames in a TRILL network using service VLAN identifiers according to embodiments of the present invention. -
FIG. 7 sets forth a block diagram of automated computing machinery comprising an exemplary bridge useful in routing frames in a TRILL network using service VLAN identifiers according to embodiments of the present invention. -
FIG. 8 sets forth a diagram illustrating an exemplary method of routing frames in a TRILL network using service VLAN identifiers according to embodiments of the present invention. -
FIG. 9 sets forth a diagram illustrating a further exemplary method of routing frames in a TRILL network using service VLAN identifiers according to embodiments of the present invention. - While certain exemplary embodiments are described in detail and shown in the accompanying drawings, it is to be understood that such embodiments are merely illustrative of and not devised without departing from the basic scope thereof, which is determined by the claims that follow.
- Although the following disclosure is discussed using terminology related to Ethernet links, various IEEE 802 standards and TRILL, these are merely by way of example and illustration, and the scope of the present invention is not so limited, but extends to the fullest scope defined by the claims herein.
- Typical edge bridges used in conjunction with rack-mounted equipment do not support the MAC-in-MAC encapsulation required in current shortest path backbone bridging network solutions, such as for example TRILL network solutions. When various bridges in a TRILL network, however, are modified for routing frames in a TRILL network using service VLAN identifiers according to embodiments of the present invention, edge bridges having hardware that does not support MAC-in-MAC encapsulation can be used as part of a TRILL network solution.
- For further explanation,
FIG. 6 sets forth a network diagram that illustrates a TRILL network having bridges that support routing frames in a TRILL network using service VLAN identifiers according to embodiments of the present invention. The TRILL network ofFIG. 6 includes four core router-bridges (CRB)—that is, CRB-4 602, CRB-5 604, CRB-6 606, and CRB-7 608—and four edge router-bridges implemented as top-of-rack devices (T-ERB)—that is, T-ERB-1 610, T-ERB-2 612, T-ERB-8 614, and T-ERB-9 616. In the example ofFIG. 6 , theTRILL network 600 interconnects customer equipment (CE)-11 620 and CE-31 630. CE-11 620 connects to theTRILL network 600 through T-ERB-1 610, while CE-31 630 connects to theTRILL network 600 through T-ERB-8 614. Thenetwork 600 ofFIG. 6 is referred to as a ‘TRILL’ network in the sense that at least the core routing bridges have hardware that supports frame routing in accordance with the TRILL protocol. -
FIG. 6 illustrates frame 640 in various stages as the frame 640 traverses the networks ofFIG. 6 . InFIG. 6 , the network administrator managing CE-11 620 and CE-31 630 has grouped CE-11 620 and CE-31 630 into a customer VLAN for data communications. Accordingly, frame 640 ofFIG. 6 includes acustomer VLAN header 642 that includes a customer VLAN identifier (C-VID) identifying the particular customer VLAN to which the CE-11 620 and CE-31 630 are assigned. TheVLAN header 642 also includes a header type (EthType) specifying that the frame is an IEEE 802.1Q compliant frame. Theframe 640 a also includes a source MAC address (CE-11-SA) designating CE-11 620 as the originator of theframe 640 a and a destination MAC address (CE-31-DA) designating CE-31 630 as the destination node to which the frame 640 is transmitted. - In the example of
FIG. 6 , T-ERB-1 610 receives theframe 640 a from CE-11 620 throughcustomer network 611. T-ERB-1 610, along with other edge bridges in theTRILL network 600, utilizes service VLAN identifiers to route the frame 640 through thenetwork 600. This service VLAN identifier is similar to service VLAN identifiers used in 802.1ad networks for identifying a service. Within an 802.1ad network, a service VLAN identifier distinguishes frames for customer networks of two or more customers that use the same customer VLAN identifier. The service VLAN identifier often conforms to the IEEE 802.1ad standard, but is not required to do so. - In the example of
FIG. 6 , eachedge bridge network 600 from another computer network. The service VLAN identifiers may be assigned to each edge bridge by the service provider supplying theTRILL network 600. Often, however, the service VLAN identifier may be assigned to each edge bridge as part of negotiations among the bridges in thenetwork 600 using any dynamic acquisition control protocol as will occur to those of skill in the art—much in the same way each bridge in theTRILL network 800 acquires its TRILL nickname. In fact, the value of the service VLAN identifier assigned to each edge bridge may be the same as the value of the TRILL nickname for that edge bridge as discussed in more detail below. - T-ERB-1 610 of
FIG. 6 has a service VLAN identifier of “T-ERB-1-SVLAN.” The T-ERB-1 610 ofFIG. 6 adds a service VLAN identifier (T-ERB-1-SVLAN) for the ingress bridge node to theframe 640 b by adding avender header 652 to theframe 640 b that includes the service VLAN identifier (T-ERB-1-SVLAN). Thevender header 652 is a customized header having a format defined by the vender of T-ERB-1 610. One of skill in the art will note, however, that many different header format may be used, including header formats that are not vender-specific. - In the example of
FIG. 6 , T-ERB-1 610 routes theframe 640 b to a next bridge in theTRILL network 600 that is on a path from theingress bridge node 610 to theegress bridge node 614 through which thedestination node 630 connects to thenetwork 600—that is, CRB-5 604. T-ERB-1 610 ofFIG. 6 routes theframe 640 b based on the destination node address (CE-31-DA) for the destination node, CE-31 630. T-ERB-1 610 ofFIG. 6 uses the destination address to identify theegress bridge 614 through which the destination node connects to thenetwork 600. T-ERB-1 610 learns the edge bridges through which various nodes connect to thenetwork 600 by recording the ingress node identifier-origin node address pairs for the frames that T-ERB-1 610 receives for processing when it operates as an egress node. After identifying the egress bridge through which the destination node connects to thenetwork 600, then T-ERB-1 610 identifies the next node—CRB-5 604—along the shortest path to theegress bridge node 614. T-ERB-1 610 then transmits theframe 640 b to CRB-5 604 through the port connecting T-ERB-1 610 to CRB-5 604. - CRB-5 604 of
FIG. 6 receives theframe 640 b from the ingress bridge T-ERB-1 610 and adds aTRILL header 654 to the frame 640 in dependence upon the service VLAN identifier (T-ERB-1-SVLAN) and the destination node address (CE-31-DA) for the destination node, CE-31 630. TheTRILL header 654 is a standard header conforming to the TRILL protocol and includes an ingress bridge nickname and an egress bridge nickname. - As mentioned above, the value that a bridge uses for its service VLAN identifier may be the same value that the bridge uses for its TRILL nickname. However, one of ordinary skill in the art will understand that the same value need not be used because the service VLAN identifier is distinct, or separate, from the TRILL nickname for any particular edge bridge. That is, the service VLAN identifier is generally part of a customized vender header that does not conform to the TRILL protocol, while the TRILL nickname is part of the TRILL header used to route frames according to the TRILL protocol. The bridges in a network generally obtain their TRILL nicknames using a dynamic nickname acquisition protocol described in the “Rbridges: Base Protocol Specification” promulgated by the TRILL Working Group, which is affiliated with the Internet Engineering Task Force.
- Having a bridge identifier in a vender header distinct from the TRILL nickname in the TRILL header allows bridges to be utilized as edge bridges in the
TRILL network 600 that are not capable of encapsulating a frame with a standard TRILL header such as, for example,TRILL header 551 inFIG. 5 . For example, inFIG. 6 , the hardware of edge router-bridges FIG. 6 do not support the TRILL protocol. That is, the hardware of edge router-bridges FIG. 6 are not capable of encapsulating a frame with a standard TRILL header such as, for example,TRILL header 551 inFIG. 5 , and utilizing MAC-in-MAC encapsulation required under the TRILL protocol to route the frame from one hop to another through theTRILL network 800. Rather than use the TRILL nicknames for the ingress and egress router-bridges, the edge router-bridges add service VLAN identifiers that are unique for each edge router bridge in theTRILL network 600 ofFIG. 6 and are supported by the hardware of those bridges. The ingress bridge has the ability to add these service VLAN identifiers to the frame because, although hardware of edge router-bridges FIG. 6 cannot add a TRILL header to a frame, the edge router-bridge hardware does support certain stacked headers or customized headers that allows these router-bridges to add the service VLAN identifier for the ingress bridge to the frame 640. - To add the ingress bridge nickname to the
TRILL header 654, therefore, CRB-5 604 need only add the value of the service VLAN identifier for theingress bridge node 610 as the ingress bridge nickname in theTRILL header 654. To add the egress bridge nickname to theTRILL header 654, CRB-5 604 may lookup the service VLAN identifier for the egress bridge node associated with the destination node address in a table that stores such values. The contents of this table may be updated periodically using network control protocol and may be implemented in any manner as will occur to those of ordinary skill in the art. After obtaining the SVLAN identifier for the egress bridge node, CRB-5 604 may then add the value of the SVLAN identifier for the egress bridge node as the egress bridge nickname in theTRILL header 654. - When CRB-5 604 adds the
TRILL header 654 in the example ofFIG. 6 , CRB-5 604 generally removes thevender header 652 that contains the service SVLAN identifier (T-ERB-1-SVLAN) because such acustomized vender header 652 is not part of the standard TRILL protocol. One of ordinary skill in the art will note, however, that in some embodiments, the vender header may remain part of the frame as it travels through the core bridges in the TRILL network (600). - In the example of
FIG. 6 , CRB-5 604 routes theframe 640 c to the egress bridge node through which thedestination node 630 connects to thenetwork 600 based on the ingress bridge nickname and the egress bridge nickname in theTRILL header 654. Using the ingress bridge nickname and the egress bridge nickname, CRB-5 604 may identify the next bridge in theTRILL network 600 that is on a path from the bridge node to the egress bridge node according to the TRILL protocol. In the example ofFIG. 6 , the next bridge in theTRILL network 600 that is on a path from the bridge node to the egress bridge node is CRB-4 602. CRB-5 604 may then route theframe 640 c to the egress bridge node by encapsulating the frame with anEthernet header 656 that includes the MAC address for CRB-4 602. CRB-5 604 then routes theframe 640 c to the next bridge node, CRB-4 602 in dependence upon the MAC address in theMAC header 656. - In the example of
FIG. 6 , CRB-4 602 receives theframe 640 b from the CRB-5 604 for transmission to CE-31 630. Upon examining the information in theframe 640 c, CRB-4 602 determines that the frame 640 traverses the egress bridge node T-ERB-8 614 on the next network hop. Because T-ERB-8 614 does not have the hardware to supportTRILL header 654, CRB-4 602 replaces theTRILL header 654 with a customized vender header that includes the service VLAN identifier (ERB-1-SVLAN) for theingress bridge 610. CRB-4 602 then routes theframe 640 d to the egress bridge node T-ERB-8 614. CRB-4 602 knows that egress bridge node T-ERB-8 614 lacks MAC-in-MAC encapsulation capabilities because those capabilities are generally broadcast to other nodes on thenetwork 600 when egress bridge node T-ERB-8 614 initially joins thenetwork 600. - The egress bridge node T-ERB-8 614 in
FIG. 6 receives theframe 640 d from CRB-4 602 for transmission to the destination node CE-31 630. Becausecustomer networks FIG. 6 are IEEE 802.1Q networks, T-ERB-8 614 removes the service VLAN identifier (T-ERB-1-SVLAN) from theframe 640 d, leavingframe 640 a. T-ERB-8 614 then routes the frame 640 for delivery to the destination node CE-31 630 throughcustomer network 613. - When T-ERB-8 614 first receives the frame 640, T-ERB-8 614 records the ingress node identifier-origin node address pair. Recording this value pair allows T-ERB-8 614 to learn that the
origin node 620 is connected to thenetwork 600 throughedge bridge 610 and utilize the information in the future when T-ERB-8 614 operates as an ingress bridge node. T-ERB-8 614 utilizes such information as an ingress bridge node because T-ERB-8 614 needs to know which edge bridge is the egress bridge node to determine the shortest path through thenetwork 600. - One of ordinary skill in the art will note that in the example of
FIG. 6 , the first core router-bridge that received the frame from the ingress bridge added a TRILL header to the frame. The core router-bridges then utilized the TRILL nicknames in the TRILL header to route the frame through the network to core bridge directly connected to the egress bridge by a single network hop. In such a manner, once the TRILL header has been added to the frame, the other core bridge-routers that route the frame using the TRILL header need not be configured for routing frames in a TRILL network using service VLAN identifiers according to embodiments of the present invention. Rather, these router-bridges may route the frame in the standard fashion provided by the TRILL protocol. Depending on the topology of the network, therefore, standard router-bridges may be utilized along with router-bridges modified to operate in accordance with embodiments of the present invention. - Routing frames in a TRILL network using service VLAN identifiers according to embodiments of the present invention is implemented generally with computers, that is, automated computing machinery. For further explanation, therefore,
FIG. 7 sets forth a block diagram of automated computing machinery comprising anexemplary bridge 150 useful in routing frames in a TRILL network using service VLAN identifiers according to embodiments of the present invention. Thebridge 150 ofFIG. 7 is one of a plurality of bridge nodes included in the computer network. At least one of the bridge nodes in the network operates as an ingress bridge node through which the frames are received into the computer network. Also, at least one of the bridge nodes in the network operates as an egress bridge node through which the frames are transmitted out of the computer network. - In the example of
FIG. 7 , theexemplary bridge 150 includes at least oneprocessor 156 or ‘CPU’ as well as random access memory 168 (RAM) which is connected through a high speed memory bus 166 and bus adapter 158 to theprocessor 156 and to other components of theexemplary bridge 150. - Stored in
RAM 168 ofFIG. 7 is arouting module 190. Therouting module 190 ofFIG. 7 is computer program instructions for routing frames in a TRILL network using service VLAN identifiers according to embodiments of the present invention. The TRILL network includes a plurality of bridge nodes. At least one of the plurality of bridge nodes operates as an ingress bridge node through which the frames are received into the TRILL network. At least one of the plurality of bridge nodes operates as an egress bridge node through which the frames are transmitted out of the TRILL network. In the TRILL network, each ingress bridge node and each egress bridge node is assigned a unique service VLAN identifier. As mentioned above, often the value for the service VLAN identifier assigned to each bridge node is the same value as the TRILL nickname acquired by each bridge using a dynamic nickname acquisition protocol described in the “Rbridges: Base Protocol Specification” promulgated by the TRILL Working Group, which is affiliated with the Internet Engineering Task Force. - The
routing module 190 ofFIG. 7 operates generally for routing frames in a TRILL network using service VLAN identifiers according to embodiments of the present invention by: receiving, from the ingress bridge node, a frame for transmission to a destination node, the destination node connected to the TRILL network through the egress bridge node, the received frame including a customer VLAN identifier, a service VLAN identifier for the ingress bridge node, and a destination node address for the destination node, the received frame not having MAC-in-MAC encapsulation; adding, to the frame in dependence upon the service VLAN identifier for the ingress bridge node and the destination node address for the destination node, a TRILL header conforming to the TRILL protocol, the TRILL header including an ingress bridge nickname and an egress bridge nickname; and routing, to the egress bridge node through which the destination node connects to the network, the frame in dependence upon the ingress bridge nickname and the egress bridge nickname. - The
routing module 190 ofFIG. 7 also operates generally for routing frames in a TRILL network using service VLAN identifiers according to embodiments of the present invention by: receiving a frame for transmission to a destination node, the destination node connected to the network through the egress bridge node, the frame originating from a source node connected to the network through the ingress bridge node, the frame including a destination node address for the destination node and a TRILL header, the TRILL header including an ingress bridge nickname for the ingress bridge node and an egress bridge nickname for the egress bridge node; determining that the frame traverses the egress bridge node on the next hop toward the destination node; in response to the determination, replacing the TRILL header with the service VLAN identifier for the ingress bridge node; and routing, by the bridge node, the frame to the egress bridge node. - Also stored in
RAM 168 is anoperating system 154. Operating systems useful in bridges according to embodiments of the present invention may include Juniper Networks' JUNOS® and JUNOSe®, Cisco's IOS®, or Extreme Networks' ExtremeXOS®. Other operating systems that may be useful in bridges according to embodiments of the present invention may include lightweight versions of UNIX™, Linux™, Microsoft XP™, and others as will occur to those of skill in the art.Operating system 154 androuting module 190 in the example ofFIG. 7 are shown inRAM 168, but many components of such software typically are stored innon-volatile memory 172 also, for example, Electrically Erasable Programmable Read-Only Memory (EEPROM) or in memory of the application-specific integrated circuits (ASICs) 186. - The
bridge 150 ofFIG. 7 includes abridge interface 180 connected to the other component of thebridge 150 through the bus adapter 158. Thebridge interface 180 provides ports 182 through which nodes 184 connected to thebridge 150. The nodes 184 may be implemented as servers, workstations, network devices, or any other computing device as will occur to those of skill in the art. Thebridge interface 180 ofFIG. 7 includes switching circuitry controlled by theprocessor 156 orASICs 186. The switching circuitry of thebridge interface 180 provides high-speed switching services to rapidly receive frames on one port and forward those frames on to their ultimate destination through another port. The switching circuitry may also provided limited processing capabilities off-loaded from theASICs 186 or theprocessor 156. - In the example of
FIG. 7 , theASICs 186 connected to thebridge interface 180 provide certain frame processing services in an effort to offload processing from themain processor 156. For example, theASICs 186 may be used to provide filtering, replication, forwarding, encapsulation, or de-encapsulation services. Even still, theASICs 186 may contain and execute therouting module 190 as described above. - The
exemplary bridge 150 ofFIG. 7 includes a bus adapter 158, a computer hardware component that contains drive electronics for the high speed buses, the front side bus 162 and the memory bus 166, as well as drive electronics for the interface bus 169 and the slower expansion bus 160. Through the expansion bus 160 ofFIG. 7 , thecommunications adapter 167,non-volatile memory 172, and I/O adapter 178 are connected to the other components of theexemplary bridge 150. - The
exemplary bridge 150 ofFIG. 7 includes one or more input/output (‘I/O’)adapters 178. I/O adapters 178 provide components that allow theprocessor 156 to interface with various I/O components of the bridge. Exemplary I/O components may include, for example, light-emitting diodes (LEDs), liquid-crystal displays (LCDs), physical switches and buttons, or other interface components as will occur to those of skill in the art. - The
exemplary bridge 150 ofFIG. 7 also includes acommunications adapter 167 for data communications with other computing devices out of band from the network communications through ports 182. Thecommunications adapter 167 may provide theprocessor 156 with an interface according to the Universal Serial Bus (USB) specification, Small Computer System Interface (SCSI) specification, RS-232 specification, Inter-Integrated Circuit (I2C) bus protocol, a System Management Bus (SMBus) protocol, an Intelligent Platform Management Bus (IPMB) protocol, or the like. - One of ordinary skill in the art will note that the exemplary implementation of the
bridge 150 ofFIG. 7 is for explanation only and not for limitation. Other computing architectures as will occur to those of skill in the art may also be useful for routing frames in a TRILL network using service VLAN identifiers according to embodiments of the present invention. For example, the bridge may be implemented using a general-purpose computer or a specialized computing device dedicated for network frame processing, or other hybrid architectures. -
FIGS. 8-9 provide further explanation of various embodiments of the present invention as different bridges operating according to embodiments of the present invention route a frame through a TRILL network.FIG. 8 sets forth a flow chart illustrating an exemplary method of routing frames in aTRILL network 800 using service VLAN identifiers according to embodiments of the present invention. TheTRILL network 800 ofFIG. 8 includes a plurality ofbridge nodes FIG. 8 ,bridge node 810 operates as an ingress bridge node through which the frames are received into theTRILL network 800, andbridge node 818 operates as an egress bridge node through which the frames are transmitted out of theTRILL network 800. In the example ofFIG. 8 , the hardware of theingress bridge node 810 and hardware of theegress bridge node 818 do not support MAC-in-MAC encapsulation, and thus are unable to support the TRILL protocol at the hardware level. - The
bridge node 812 ofFIG. 8 includes twelve ports 900 a-l through which other nodes may connect to thebridge node 812. In the example ofFIG. 8 , theingress bridge node 810 connects to thebridge node 812 through port 900 b.Core bridge node 816 connects to thebridge node 812 throughport 900 k. - The method of
FIG. 8 includes receiving 902, by thebridge node 812 from theingress bridge node 810, a frame 822 for transmission to adestination node 808. In the example ofFIG. 8 , thedestination node 808 connects to theTRILL network 800 through customer network 805 and theegress bridge node 818. Thebridge node 812 may receive 902 the frame 822 from theingress bridge node 810 according to the method ofFIG. 8 by retrieving theframe 822 a from a reception stack for port 900 b and advancing the stack pointer for the reception stack. - The
frame 822 a ofFIG. 8 specifies asource node address 826 for the source node (not shown) originating theframe 822 a and adestination node address 824 for adestination node 808 to which the frame 822 is transmitted. The source and destination node addresses 826, 824 may be implemented as MAC addresses. Theframe 822 a also includes a customer VLAN identifier 823 that the equipment on the customer network uses to assign the frame 822 to a particular VLAN established across one or more customer networks. Theframe 822 a further includes avender header 830 that specifies aservice VLAN identifier 831. Theservice VLAN identifier 831 ofFIG. 8 and theframe 822 a generally conform to the IEEE 802.1ad standard, but one of ordinary skill in the art will recognize that such conformance is not a required feature in embodiments of the present invention. - The method of
FIG. 8 also includes adding 904, by thebridge node 812 to the frame 822 in dependence upon theservice VLAN identifier 831 for theingress bridge node 810 and thedestination node address 824 for thedestination node 808, aTRILL header 1003 conforming to the TRILL protocol. TheTRILL header 1003 includes aningress bridge nickname 1004 and anegress bridge nickname 1006. As mentioned above, the values for theingress bridge nickname 1004 and theegress bridge nickname 1006 may be the same as the values of the service VLAN identifiers for theingress bridge 810 and theegress bridge 818, respectively. Thus, thebridge node 812 may add 904 theingress bridge nickname 1004 according to the method ofFIG. 8 by storing the value of theservice VLAN identifier 831 in theframe 822 a in theTRILL header 1003 as theingress bridge nickname 1004. Thebridge node 812 may add 904 theegress bridge nickname 1006 according to the method ofFIG. 8 by looking up in thenetwork topology 1105 the nickname for the edge bridge through which thedestination node 808 connects to thenetwork 800 and storing that value as theegress bridge nickname 1006 in theTRILL header 1003. - The
network topology 1105 ofFIG. 8 is a table that maintains the network topology fornetwork 800 which defines the data communications connections among the nodes in thenetwork 800. The bridge nodes determines the data communications connections among the nodes based on the control frames exchanged among the nodes according to a control protocol such as, for example, the Intermediate System to Intermediate System (“IS-IS”) protocol. Thenetwork topology 1105 also associates the edge bridges with the nodes outside of thenetwork 800 that send or receive frames through thenetwork 800. Such a network topology may be implemented and periodically updated in any manner as will occur to those of ordinary skill. - The method of
FIG. 8 includesrouting 906, by thebridge node 812 to theegress bridge node 818 through which thedestination node 808 connects to thenetwork 800, theframe 822 b in dependence upon theingress bridge nickname 1004 and theegress bridge nickname 1006. Thebridge node 812 may route 906 theframe 822 b based on theingress bridge nickname 1004 and theegress bridge nickname 1006 according to the method ofFIG. 8 by encapsulating theframe 822 b with anEthernet header 908. One of ordinary skill in the art will note at this point the frame 822 now utilizes MAC-in-MAC encapsulation, which is generally supported by the core bridges 812 and 816 in theTRILL network 800, but not the edge bridges 810 and 818. TheEthernet header 908 includes a MAC address for a next bridge in thenetwork 800 that is on a path from thebridge node 812 to theegress bridge node 818—that is,bridge 816. - In the example of
FIG. 8 , thebridge node 812 uses the forwarding tables 1005 established in accordance with the TRILL specification to identify the next bridge in thenetwork 800 that is on the shortest path from theingress bridge node 810 to theegress bridge node 818. Each bridge has a set of forwarding tables customized for that bridge's location in the topology of thenetwork 800 for routing frames between different pairs of edge bridges. In this manner, thebridge node 812 can use theingress bridge nickname 1004 and theegress bridge nickname 1006 to locate the next node along the path between any pair of ingress and egress nodes. - After the
Ethernet header 908 is added to theframe 822 b, then thebridge node 812 may route theframe 822 b to the next bridge node using the MAC address 910 of that next node by placing theframe 822 b in the transmission stack for theport 900 k corresponding to MAC address 910. Once the frame 822 is placed in the transmission stack for aport 900 k, the bridge interface, such as the bridge interface described with reference toFIG. 7 , sends the frame 822 out from theappropriate port 900 k to the next bridge—that is,bridge 816. - In the example of
FIG. 8 , even thoughbridge 812 receives theframe 822 a fromedge bridge 810 in theTRILL network 800, one of ordinary skill in the art will note that the receivedframe 822 a does not already have a TRILL header or an additional MAC address for TRILL network equipment based on the TRILL header. In such a manner, the frame 822 does not utilize MAC-in-MAC encapsulation as the frame 822 traverse the first hop in theTRILL network 800. This allows theTRILL network 800 to use bridges with hardware that does not support MAC-in-MAC encapsulation as edge bridges. Because the current generation of bridges does not support MAC-in-MAC encapsulation, the ability to use existing bridges as edges bridges in a TRILL network reduces the financial costs of implementing a TRILL network solution. - When using bridges that do not support MAC-in-MAC encapsulation as edge bridges in a TRILL network, the MAC addresses for the bridges in the TRILL network and the supporting TRILL header must be stripped from the frame before the frame reaches the egress bridge node—namely, when the frame reaches
bridge 816. For further explanation of the frame processing that takes place atcore bridge 816,FIG. 9 sets forth a flow chart illustrating a further exemplary method of routing frames in aTRILL network 800 using service VLAN identifiers according to embodiments of the present invention. - The network topology of
FIG. 9 is similar to the topology inFIG. 8 . TheTRILL network 800 ofFIG. 9 includes a plurality ofbridge nodes FIG. 9 ,bridge node 810 operates as an ingress bridge node through which the frames are received into theTRILL network 800, andbridge node 818 operates as an egress bridge node through which the frames are transmitted out of theTRILL network 800. Each ingress bridge node and each egress bridge node is assigned a unique service VLAN identifier. Thebridge nodes FIG. 9 operate as core bridges. In the example ofFIG. 9 , the hardware of theingress bridge node 810 and hardware of theegress bridge node 818 do not support MAC-in-MAC encapsulation, and thus are unable to support the TRILL protocol. - The
bridge node 816 ofFIG. 9 includes twelve ports 1100 a-1 through which other nodes may connect to thebridge node 816. In the example ofFIG. 9 , thecore bridge node 812 connects to thebridge node 816 throughport 1100 c.Egress bridge node 818 connects to thebridge node 816 throughport 1100 i. - The method of
FIG. 9 includes receiving 1102, bybridge node 816, a frame 822 for transmission to adestination node 808. Thedestination node 808 ofFIG. 9 connects to thenetwork 800 through theegress bridge node 818 and customer network 805. The frame 822 specifies thesource node address 826 of the source node originating the frame 822 and thedestination node address 824 of thedestination node 808. The frame 822 has aTRILL header 1003 that includes aningress bridge nickname 1004 and anegress bridge nickname 1006. The frame 822 also includes anEthernet header 908 that includes a MAC address 910 of thebridge node 816—all similar to those described above with reference toFIG. 8 . Thebridge node 816 may receive 1102 theframe 822 b according to the method ofFIG. 9 by retrieving the frame 822 d from a reception stack forport 1100 c and advancing the stack pointer for the reception stack. The reception stack may be implemented as a buffer into which frames received from a port 1100 are placed until those frames are processed by thebridge 816. - The method of
FIG. 9 includes determining 1104, by thebridge node 816, that the frame 822 traverses theegress bridge node 816 on the next network hop. In the method ofFIG. 9 , thebridge node 816 may determine 1104 that the frame 822 traverses theegress bridge node 816 on the next network hop usingnetwork topology 1105, which may be obtained and implemented in a manner as will occur to those of skill in the art, particularly through a dynamic control protocol that periodically detects changes in the network topology. - As previously mentioned,
egress bridge 818 does not support MAC-in-MAC encapsulation. Thus, the method ofFIG. 9 includes replacing 1108, by thebridge node 816 in response to the determination, theTRILL header 1003 with theservice VLAN identifier 831. Because the TRILL nicknames and the service VLAN identifiers may be implemented using the same values, thebridge node 816 may replace 1108 theTRILL header 1003 withservice VLAN identifier 831 according to the method ofFIG. 9 by removing theTRILL header 1003 and theEthernet header 908 and adding avender header 830 to theframe 822 c that includes the value of theingress bridge nickname 1004 as theservice VLAN identifier 831. In some other embodiments in which the service VLAN identifiers for the edge bridges and the TRILL nicknames are not the same, then thebridge 816 may use a lookup table that associates service VLAN identifiers for edge nodes with their corresponding TRILL nicknames. The lookup table may be implemented in any manner as will occur to those of skill in the art and periodically updated using a network control protocol or other such mechanism as will occur to those of skill in the art. - The method of
FIG. 9 includesrouting 1110, by thebridge node 816, the frame 822 to theegress bridge node 816. Thebridge node 816 may route 1110 the frame 822 to theegress bridge node 816 according to the method ofFIG. 9 by storing the frame 822 in the transmission stack for theport 1100 i corresponding thenext bridge 818. Once the frame 822 is placed in the transmission stack for aport 1100 i, the bridge interface, such as the bridge interface described with reference toFIG. 7 , sends the frame 822 out from theappropriate port 1100 i to theegress bridge 818. - One of ordinary skill in the art will recall from above that the
service VLAN identifier 831 is part of a customized or stacked vender header that does not conform with IEEE 802.1Q. Because the customer network ofFIG. 8 is a IEEE 802.1Q compliant network, theegress bridge node 818 removes thevender header 830 from the frame 822 before sending the frame 822 to thedestination node 808. - By removing the
TRILL header 1003 and the additional MAC address 910 for TRILL network equipment that is based on the TRILL header, the frame 822 is essentially transformed from a TRILL frame with MAC-in-MAC encapsulation into a frame with stack headers that does not utilize MAC-in-MAC encapsulation, typically an IEEE802.1ad compliant frame. This allows theTRILL network 800 to use bridges with hardware that does not support MAC-in-MAC encapsulation as edge bridges. Because the current generation of bridges does not support MAC-in-MAC encapsulation, the ability to use existing bridges as edges bridges in a TRILL network reduces the financial costs of implementing a TRILL network solution. - When
egress bridge 818 receives the frame 822,egress bridge 818 records the ingress node identifier (Customer VLAN ID 823)-origin node address (Source Address 826) pair. Recording this value pair allowsegress bridge 818 to learn that the origin node (not shown) is connected to thenetwork 800 throughedge bridge 810 and utilize the information in the future whenegress bridge 818 operates as an ingress bridge node.Egress bridge 818 utilizes such information as an ingress bridge node becauseedge bridge 818 needs to know which edge bridge is the egress bridge node to determine the shortest path through thenetwork 800. - Exemplary embodiments of the present invention are described largely in the context of a fully functional network bridges configured for routing frames in a TRILL network using service VLAN identifiers. One of skill in the art will recognize, however, that the present invention also may be embodied in a computer program product disposed on computer readable media for use with any suitable data processing system. Such computer readable media may be transmission media or recordable media for machine-readable information, including magnetic media, optical media, or other suitable media. Examples of recordable media include magnetic disks in hard drives or diskettes, compact disks for optical drives, magnetic tape, and others as will occur to those of skill in the art. Examples of transmission media include telephone networks for voice communications and digital data communications networks such as, for example, Ethernets™ and networks that communicate with the Internet Protocol and the World Wide Web as well as wireless transmission media such as, for example, networks implemented according to the IEEE 802.11 family of specifications. Persons skilled in the art will immediately recognize that any computer system having suitable programming means will be capable of executing the steps of the method of the invention as embodied in a program product. Persons skilled in the art will recognize immediately that, although some of the exemplary embodiments described in this specification are oriented to software installed and executing on computer hardware, nevertheless, alternative embodiments implemented as firmware or as hardware are well within the scope of the present invention.
- It will be understood from the foregoing description that modifications and changes may be made in various embodiments of the present invention without departing from its true spirit. The descriptions in this specification are for purposes of illustration only and are not to be construed in a limiting sense. The scope of the present invention is limited only by the language of the following claims.
Claims (31)
Priority Applications (4)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US12/397,811 US7787480B1 (en) | 2009-03-04 | 2009-03-04 | Routing frames in a trill network using service VLAN identifiers |
AT09252113T ATE535076T1 (en) | 2009-03-04 | 2009-09-02 | ROUTING FRAMES IN A TRILL NETWORK USING VLAN IDENTIFIERS |
EP09252113A EP2226973B1 (en) | 2009-03-04 | 2009-09-02 | Routing of frames in a TRILL network using VLAN identifiers |
CN200910178851.4A CN101827009B (en) | 2009-03-04 | 2009-09-29 | Routing frames in a trill network using service vlan identifiers |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US12/397,811 US7787480B1 (en) | 2009-03-04 | 2009-03-04 | Routing frames in a trill network using service VLAN identifiers |
Publications (2)
Publication Number | Publication Date |
---|---|
US7787480B1 US7787480B1 (en) | 2010-08-31 |
US20100226381A1 true US20100226381A1 (en) | 2010-09-09 |
Family
ID=41226223
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
US12/397,811 Active 2029-03-11 US7787480B1 (en) | 2009-03-04 | 2009-03-04 | Routing frames in a trill network using service VLAN identifiers |
Country Status (4)
Country | Link |
---|---|
US (1) | US7787480B1 (en) |
EP (1) | EP2226973B1 (en) |
CN (1) | CN101827009B (en) |
AT (1) | ATE535076T1 (en) |
Cited By (95)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20110194403A1 (en) * | 2010-02-05 | 2011-08-11 | Cisco Technology, Inc. | Fault isolation in trill networks |
CN102255819A (en) * | 2011-08-29 | 2011-11-23 | 神州数码网络(北京)有限公司 | Virtual local area network (VLAN)-based transparent interconnection of lots of links (TRILL) traffic priority scheduling method |
US20110299406A1 (en) * | 2010-06-02 | 2011-12-08 | Brocade Communications Systems, Inc. | Path detection in trill networks |
US20110299532A1 (en) * | 2010-06-08 | 2011-12-08 | Brocade Communications Systems, Inc. | Remote port mirroring |
US20110299533A1 (en) * | 2010-06-08 | 2011-12-08 | Brocade Communications Systems, Inc. | Internal virtual network identifier and internal policy identifier |
US20120020357A1 (en) * | 2009-06-25 | 2012-01-26 | Hitachi, Ltd. | Transport control system and transport control server |
CN102387078A (en) * | 2011-10-19 | 2012-03-21 | 杭州华三通信技术有限公司 | Method and routing bridge for maintaining neighbourship in TRILL (Transparent Interconnection of Lots of Links) network |
US20120147882A1 (en) * | 2010-12-13 | 2012-06-14 | Florin Balus | Method and apparatus for controlling multiple registration protocol (mrp) scope using mrp policies |
US20120163164A1 (en) * | 2010-12-27 | 2012-06-28 | Brocade Communications Systems, Inc. | Method and system for remote load balancing in high-availability networks |
US20120180047A1 (en) * | 2011-01-11 | 2012-07-12 | International Business Machines Corporation | PRESERVING TRAFFIC CLASS PRIORITY QoS WITH SELF-VIRTUALIZING INPUT/OUTPUT DEVICE |
US20120177045A1 (en) * | 2011-01-07 | 2012-07-12 | Berman Stuart B | Methods, systems and apparatus for the interconnection of fibre channel over ethernet devices using a trill network |
US20120177044A1 (en) * | 2011-01-07 | 2012-07-12 | Berman Stuart B | Methods, systems and apparatus for the interconnection of fibre channel over ethernet devices using shortest path bridging |
CN102647330A (en) * | 2011-02-17 | 2012-08-22 | 中兴通讯股份有限公司 | Data transmission method and device |
CN102801622A (en) * | 2012-08-14 | 2012-11-28 | 神州数码网络(北京)有限公司 | Transmitting method and device for data messages |
CN102857417A (en) * | 2011-06-30 | 2013-01-02 | 中兴通讯股份有限公司 | Method and system for transmitting data in TRILL (transparent interconnection of lots of links) network |
US20130003739A1 (en) * | 2011-06-28 | 2013-01-03 | Brocade Communications Systems, Inc. | Scalable mac address distribution in an ethernet fabric switch |
US8351352B1 (en) * | 2009-07-15 | 2013-01-08 | Eastlake Iii Donald E | Methods and apparatus for RBridge hop-by-hop compression and frame aggregation |
CN102957620A (en) * | 2011-08-26 | 2013-03-06 | 华为技术有限公司 | Equipment and method for management of MAC (media access control) address table entries in TRILL (transparent interconnection of lots of links) network |
US8446914B2 (en) | 2010-06-08 | 2013-05-21 | Brocade Communications Systems, Inc. | Method and system for link aggregation across multiple switches |
WO2013106513A1 (en) * | 2012-01-12 | 2013-07-18 | Cisco Technology, Inc. | Connecting layer-2 domains over layer-3 networks |
CN103401781A (en) * | 2013-07-18 | 2013-11-20 | 杭州华三通信技术有限公司 | Access method and access device applied to TRILL (Transparent Interconnection of Lots of Links) network |
US8625616B2 (en) | 2010-05-11 | 2014-01-07 | Brocade Communications Systems, Inc. | Converged network extension |
US20140029412A1 (en) * | 2012-07-27 | 2014-01-30 | Dell Products L.P. | Systems and methods for providing anycast mac addressing in an information handling system |
US20140043972A1 (en) * | 2011-04-26 | 2014-02-13 | Huawei Technologies Co., Ltd. | Service Instance Mapping Method, Apparatus and System |
US8665886B2 (en) | 2009-03-26 | 2014-03-04 | Brocade Communications Systems, Inc. | Redundant host connection in a routed network |
US8867552B2 (en) | 2010-05-03 | 2014-10-21 | Brocade Communications Systems, Inc. | Virtual cluster switching |
US8879549B2 (en) | 2011-06-28 | 2014-11-04 | Brocade Communications Systems, Inc. | Clearing forwarding entries dynamically and ensuring consistency of tables across ethernet fabric switch |
US8885488B2 (en) | 2010-06-02 | 2014-11-11 | Brocade Communication Systems, Inc. | Reachability detection in trill networks |
US8885641B2 (en) | 2011-06-30 | 2014-11-11 | Brocade Communication Systems, Inc. | Efficient trill forwarding |
US8948056B2 (en) | 2011-06-28 | 2015-02-03 | Brocade Communication Systems, Inc. | Spanning-tree based loop detection for an ethernet fabric switch |
US8989186B2 (en) | 2010-06-08 | 2015-03-24 | Brocade Communication Systems, Inc. | Virtual port grouping for virtual cluster switching |
US8995444B2 (en) | 2010-03-24 | 2015-03-31 | Brocade Communication Systems, Inc. | Method and system for extending routing domain to non-routing end stations |
US8995272B2 (en) | 2012-01-26 | 2015-03-31 | Brocade Communication Systems, Inc. | Link aggregation in software-defined networks |
US9001824B2 (en) | 2010-05-18 | 2015-04-07 | Brocade Communication Systems, Inc. | Fabric formation for virtual cluster switching |
US9007958B2 (en) | 2011-06-29 | 2015-04-14 | Brocade Communication Systems, Inc. | External loop detection for an ethernet fabric switch |
US9143444B2 (en) | 2013-03-12 | 2015-09-22 | International Business Machines Corporation | Virtual link aggregation extension (VLAG+) enabled in a TRILL-based fabric network |
US9154416B2 (en) | 2012-03-22 | 2015-10-06 | Brocade Communications Systems, Inc. | Overlay tunnel in a fabric switch |
US20150341286A1 (en) * | 2012-07-30 | 2015-11-26 | Byung Kyu Choi | Provider Bridged Network Communication |
US9231890B2 (en) | 2010-06-08 | 2016-01-05 | Brocade Communications Systems, Inc. | Traffic management for virtual cluster switching |
US9270486B2 (en) | 2010-06-07 | 2016-02-23 | Brocade Communications Systems, Inc. | Name services for virtual cluster switching |
US9270572B2 (en) | 2011-05-02 | 2016-02-23 | Brocade Communications Systems Inc. | Layer-3 support in TRILL networks |
US20160065503A1 (en) * | 2014-08-29 | 2016-03-03 | Extreme Networks, Inc. | Methods, systems, and computer readable media for virtual fabric routing |
US20160099858A1 (en) * | 2013-07-15 | 2016-04-07 | Cisco Technology, Inc. | Span Session Monitoring |
US9350680B2 (en) | 2013-01-11 | 2016-05-24 | Brocade Communications Systems, Inc. | Protection switching over a virtual link aggregation |
US9374301B2 (en) | 2012-05-18 | 2016-06-21 | Brocade Communications Systems, Inc. | Network feedback in software-defined networks |
US9401818B2 (en) | 2013-03-15 | 2016-07-26 | Brocade Communications Systems, Inc. | Scalable gateways for a fabric switch |
US9401872B2 (en) | 2012-11-16 | 2016-07-26 | Brocade Communications Systems, Inc. | Virtual link aggregations across multiple fabric switches |
US9407533B2 (en) | 2011-06-28 | 2016-08-02 | Brocade Communications Systems, Inc. | Multicast in a trill network |
US9413691B2 (en) | 2013-01-11 | 2016-08-09 | Brocade Communications Systems, Inc. | MAC address synchronization in a fabric switch |
US9450870B2 (en) | 2011-11-10 | 2016-09-20 | Brocade Communications Systems, Inc. | System and method for flow management in software-defined networks |
US9461840B2 (en) | 2010-06-02 | 2016-10-04 | Brocade Communications Systems, Inc. | Port profile management for virtual cluster switching |
US9524173B2 (en) | 2014-10-09 | 2016-12-20 | Brocade Communications Systems, Inc. | Fast reboot for a switch |
US9544219B2 (en) | 2014-07-31 | 2017-01-10 | Brocade Communications Systems, Inc. | Global VLAN services |
US9548873B2 (en) | 2014-02-10 | 2017-01-17 | Brocade Communications Systems, Inc. | Virtual extensible LAN tunnel keepalives |
US9548926B2 (en) | 2013-01-11 | 2017-01-17 | Brocade Communications Systems, Inc. | Multicast traffic load balancing over virtual link aggregation |
US9565113B2 (en) | 2013-01-15 | 2017-02-07 | Brocade Communications Systems, Inc. | Adaptive link aggregation and virtual link aggregation |
US9565099B2 (en) | 2013-03-01 | 2017-02-07 | Brocade Communications Systems, Inc. | Spanning tree in fabric switches |
US9565028B2 (en) | 2013-06-10 | 2017-02-07 | Brocade Communications Systems, Inc. | Ingress switch multicast distribution in a fabric switch |
US9590855B2 (en) | 2013-11-18 | 2017-03-07 | Lenovo Enterprise Solutions (Singapore) Pte. Ltd. | Configuration of transparent interconnection of lots of links (TRILL) protocol enabled device ports in edge virtual bridging (EVB) networks |
US9602430B2 (en) | 2012-08-21 | 2017-03-21 | Brocade Communications Systems, Inc. | Global VLANs for fabric switches |
US9608833B2 (en) | 2010-06-08 | 2017-03-28 | Brocade Communications Systems, Inc. | Supporting multiple multicast trees in trill networks |
US9628407B2 (en) | 2014-12-31 | 2017-04-18 | Brocade Communications Systems, Inc. | Multiple software versions in a switch group |
US9628293B2 (en) | 2010-06-08 | 2017-04-18 | Brocade Communications Systems, Inc. | Network layer multicasting in trill networks |
US9626255B2 (en) | 2014-12-31 | 2017-04-18 | Brocade Communications Systems, Inc. | Online restoration of a switch snapshot |
US9699001B2 (en) | 2013-06-10 | 2017-07-04 | Brocade Communications Systems, Inc. | Scalable and segregated network virtualization |
US9699117B2 (en) | 2011-11-08 | 2017-07-04 | Brocade Communications Systems, Inc. | Integrated fibre channel support in an ethernet fabric switch |
US9699029B2 (en) | 2014-10-10 | 2017-07-04 | Brocade Communications Systems, Inc. | Distributed configuration management in a switch group |
US9716672B2 (en) | 2010-05-28 | 2017-07-25 | Brocade Communications Systems, Inc. | Distributed configuration management for virtual cluster switching |
US9736085B2 (en) | 2011-08-29 | 2017-08-15 | Brocade Communications Systems, Inc. | End-to end lossless Ethernet in Ethernet fabric |
US9742693B2 (en) | 2012-02-27 | 2017-08-22 | Brocade Communications Systems, Inc. | Dynamic service insertion in a fabric switch |
US9769016B2 (en) | 2010-06-07 | 2017-09-19 | Brocade Communications Systems, Inc. | Advanced link tracking for virtual cluster switching |
US9800471B2 (en) | 2014-05-13 | 2017-10-24 | Brocade Communications Systems, Inc. | Network extension groups of global VLANs in a fabric switch |
US9807031B2 (en) | 2010-07-16 | 2017-10-31 | Brocade Communications Systems, Inc. | System and method for network configuration |
US9807005B2 (en) | 2015-03-17 | 2017-10-31 | Brocade Communications Systems, Inc. | Multi-fabric manager |
US9806906B2 (en) | 2010-06-08 | 2017-10-31 | Brocade Communications Systems, Inc. | Flooding packets on a per-virtual-network basis |
US9807007B2 (en) | 2014-08-11 | 2017-10-31 | Brocade Communications Systems, Inc. | Progressive MAC address learning |
US9806949B2 (en) | 2013-09-06 | 2017-10-31 | Brocade Communications Systems, Inc. | Transparent interconnection of Ethernet fabric switches |
US9912614B2 (en) | 2015-12-07 | 2018-03-06 | Brocade Communications Systems LLC | Interconnection of switches based on hierarchical overlay tunneling |
US9912612B2 (en) | 2013-10-28 | 2018-03-06 | Brocade Communications Systems LLC | Extended ethernet fabric switches |
US9942097B2 (en) | 2015-01-05 | 2018-04-10 | Brocade Communications Systems LLC | Power management in a network of interconnected switches |
US10003552B2 (en) | 2015-01-05 | 2018-06-19 | Brocade Communications Systems, Llc. | Distributed bidirectional forwarding detection protocol (D-BFD) for cluster of interconnected switches |
US10038592B2 (en) | 2015-03-17 | 2018-07-31 | Brocade Communications Systems LLC | Identifier assignment to a new switch in a switch group |
US10063473B2 (en) | 2014-04-30 | 2018-08-28 | Brocade Communications Systems LLC | Method and system for facilitating switch virtualization in a network of interconnected switches |
US10171303B2 (en) | 2015-09-16 | 2019-01-01 | Avago Technologies International Sales Pte. Limited | IP-based interconnection of switches with a logical chassis |
US20190068481A1 (en) * | 2017-08-24 | 2019-02-28 | Fujitsu Limited | Method, switch apparatus and non-transitory computer-readable storage medium |
US10237090B2 (en) | 2016-10-28 | 2019-03-19 | Avago Technologies International Sales Pte. Limited | Rule-based network identifier mapping |
US10277464B2 (en) | 2012-05-22 | 2019-04-30 | Arris Enterprises Llc | Client auto-configuration in a multi-switch link aggregation |
US10439929B2 (en) | 2015-07-31 | 2019-10-08 | Avago Technologies International Sales Pte. Limited | Graceful recovery of a multicast-enabled switch |
US10454760B2 (en) | 2012-05-23 | 2019-10-22 | Avago Technologies International Sales Pte. Limited | Layer-3 overlay gateways |
US10476698B2 (en) | 2014-03-20 | 2019-11-12 | Avago Technologies International Sales Pte. Limited | Redundent virtual link aggregation group |
US10579406B2 (en) | 2015-04-08 | 2020-03-03 | Avago Technologies International Sales Pte. Limited | Dynamic orchestration of overlay tunnels |
US10581758B2 (en) | 2014-03-19 | 2020-03-03 | Avago Technologies International Sales Pte. Limited | Distributed hot standby links for vLAG |
US10616108B2 (en) | 2014-07-29 | 2020-04-07 | Avago Technologies International Sales Pte. Limited | Scalable MAC address virtualization |
US10944669B1 (en) | 2018-02-09 | 2021-03-09 | GoTenna, Inc. | System and method for efficient network-wide broadcast in a multi-hop wireless network using packet echos |
US11811642B2 (en) | 2018-07-27 | 2023-11-07 | GoTenna, Inc. | Vine™: zero-control routing using data packet inspection for wireless mesh networks |
Families Citing this family (69)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2003304388A (en) * | 2002-04-11 | 2003-10-24 | Sony Corp | Additional information detection processor, apparatus and method for contents reproduction processing, and computer program |
US8509248B2 (en) * | 2008-12-29 | 2013-08-13 | Juniper Networks, Inc. | Routing frames in a computer network using bridge identifiers |
WO2010100517A1 (en) * | 2009-03-03 | 2010-09-10 | Telefonaktiebolaget L M Ericsson (Publ) | Multicast interworking systems and methods |
US8792490B2 (en) * | 2009-03-16 | 2014-07-29 | Cisco Technology, Inc. | Logically partitioned networking devices |
KR101208230B1 (en) * | 2009-05-11 | 2012-12-05 | 후지쯔 가부시끼가이샤 | Node device, executing method for node device and computer-readable storage medium having program |
US8599860B2 (en) * | 2009-05-14 | 2013-12-03 | Futurewei Technologies, Inc. | Multiple prefix connections with translated virtual local area network |
US8199753B2 (en) * | 2009-06-05 | 2012-06-12 | Juniper Networks, Inc. | Forwarding frames in a computer network using shortest path bridging |
US8125928B2 (en) * | 2009-07-24 | 2012-02-28 | Juniper Networks, Inc. | Routing frames in a shortest path computer network for a multi-homed legacy bridge node |
US8625427B1 (en) * | 2009-09-03 | 2014-01-07 | Brocade Communications Systems, Inc. | Multi-path switching with edge-to-edge flow control |
US9240928B2 (en) * | 2010-12-14 | 2016-01-19 | Telefonaktiebolaget L M Ericsson (Publ) | Data plane for resilient network interconnect |
US8798077B2 (en) * | 2010-12-29 | 2014-08-05 | Juniper Networks, Inc. | Methods and apparatus for standard protocol validation mechanisms deployed over a switch fabric system |
US8811399B2 (en) | 2011-01-07 | 2014-08-19 | Jeda Networks, Inc. | Methods, systems and apparatus for the interconnection of fibre channel over ethernet devices using a fibre channel over ethernet interconnection apparatus controller |
CN102075438B (en) * | 2011-02-14 | 2016-03-30 | 中兴通讯股份有限公司 | unicast data frame transmission method and device |
CN102638389B (en) * | 2011-02-15 | 2017-06-06 | 中兴通讯股份有限公司 | The redundancy backup method and system of a kind of TRILL network |
CN102075446A (en) * | 2011-03-01 | 2011-05-25 | 杭州华三通信技术有限公司 | Interconnection method of transparent interconnection network of lots of links in different places and operator edge device |
CN102684985B (en) * | 2011-03-17 | 2017-03-29 | 中兴通讯股份有限公司 | A kind of method and system of multi-link interference networks point domain interconnection |
CN102724097B (en) * | 2011-03-29 | 2017-03-01 | 中兴通讯股份有限公司 | A kind of ESADI processing method and system |
EP2654250A4 (en) * | 2011-04-27 | 2014-02-19 | Huawei Tech Co Ltd | Virtual local area network identity transformation method and apparatus |
US9054999B2 (en) * | 2012-05-09 | 2015-06-09 | International Business Machines Corporation | Static TRILL routing |
CN102185782B (en) * | 2011-05-17 | 2014-04-02 | 福建星网锐捷网络有限公司 | Data transmission method and device of multilink transparent transmission interconnection network |
US20130003738A1 (en) * | 2011-06-29 | 2013-01-03 | Brocade Communications Systems, Inc. | Trill based router redundancy |
CN102244614B (en) * | 2011-08-15 | 2014-07-02 | 福建星网锐捷网络有限公司 | Message forwarding method, system and routing switch |
CN102957616B (en) * | 2011-08-18 | 2015-09-23 | 盛科网络(苏州)有限公司 | In the method and system of ASIC repeating TRILL network message |
CN102957589B (en) * | 2011-08-23 | 2015-07-08 | 华为技术有限公司 | Method, network node and system for service data transmission |
CN102316000A (en) * | 2011-09-29 | 2012-01-11 | 杭州华三通信技术有限公司 | Method for declaring enabled virtual local area network (VLAN) and equipment thereof |
US8804572B2 (en) * | 2011-10-25 | 2014-08-12 | International Business Machines Corporation | Distributed switch systems in a trill network |
US8995435B2 (en) * | 2011-12-09 | 2015-03-31 | Brocade Communication Systems, Inc. | Port profile analytics |
US9094318B2 (en) * | 2012-03-29 | 2015-07-28 | Avaya Inc. | Remote mirroring |
US9270589B2 (en) * | 2012-04-04 | 2016-02-23 | Marvell Israel (M.I.S.L) Ltd. | Transparent RBridge |
US9036646B2 (en) | 2012-06-20 | 2015-05-19 | International Business Machines Corporation | Distributed routing mechanisms for a virtual switch enabled by a trill-based fabric |
US9083645B2 (en) * | 2012-09-07 | 2015-07-14 | Dell Products L.P. | Systems and methods providing reverse path forwarding compliance for a multihoming virtual routing bridge |
CN102868614B (en) * | 2012-09-13 | 2015-08-12 | 杭州华三通信技术有限公司 | Message forwarding method in TRILL network and route-bridge |
US9137144B2 (en) * | 2012-09-28 | 2015-09-15 | Alcatel Lucent | Method and apparatus for communication path selection |
CN103780486B (en) * | 2012-10-26 | 2017-03-08 | 杭州华三通信技术有限公司 | A kind of mirror image message transmission method in TRILL network and equipment |
CN103812769B (en) * | 2012-11-07 | 2017-06-20 | 华为技术有限公司 | TRILL network construction method, node and system |
CN103841019B (en) * | 2012-11-27 | 2018-06-08 | 中兴通讯股份有限公司 | The method and apparatus for returning access shortest path bridging network more |
CN103944818B (en) * | 2013-01-23 | 2018-08-28 | 中兴通讯股份有限公司 | A kind of method and system for returning Message processing in access stacking network more |
US9130836B2 (en) | 2013-02-04 | 2015-09-08 | Cisco Technology, Inc. | Provisoning of a new node joining an existing cluster in a data center environment |
US9286047B1 (en) | 2013-02-13 | 2016-03-15 | Cisco Technology, Inc. | Deployment and upgrade of network devices in a network environment |
CN104052671B (en) * | 2013-03-13 | 2018-01-12 | 新华三技术有限公司 | The processing method and routing bridge of multicast forwarding list item in TRILL network |
CN104079464B (en) * | 2013-03-27 | 2018-10-26 | 新华三技术有限公司 | A kind of data transmission method and equipment |
JP6217138B2 (en) * | 2013-05-22 | 2017-10-25 | 富士通株式会社 | Packet transfer apparatus and packet transfer method |
US9143327B2 (en) * | 2013-10-04 | 2015-09-22 | Texas Instruments Incorporated | Power line communication (PLC) network nodes using cipher then segment security |
CN105323084B (en) * | 2014-07-01 | 2020-03-10 | 中兴通讯股份有限公司 | Method, device and system for managing TRILL network by three layers of network management |
CN105450528B (en) | 2014-08-29 | 2018-06-08 | 国际商业机器公司 | The method of routing forwarding and corresponding equipment are carried out to data packet |
US10374904B2 (en) | 2015-05-15 | 2019-08-06 | Cisco Technology, Inc. | Diagnostic network visualization |
US10142353B2 (en) | 2015-06-05 | 2018-11-27 | Cisco Technology, Inc. | System for monitoring and managing datacenters |
US10536357B2 (en) | 2015-06-05 | 2020-01-14 | Cisco Technology, Inc. | Late data detection in data center |
US9967158B2 (en) | 2015-06-05 | 2018-05-08 | Cisco Technology, Inc. | Interactive hierarchical network chord diagram for application dependency mapping |
US10289438B2 (en) | 2016-06-16 | 2019-05-14 | Cisco Technology, Inc. | Techniques for coordination of application components deployed on distributed virtual machines |
US10708183B2 (en) | 2016-07-21 | 2020-07-07 | Cisco Technology, Inc. | System and method of providing segment routing as a service |
US10972388B2 (en) | 2016-11-22 | 2021-04-06 | Cisco Technology, Inc. | Federated microburst detection |
US10708152B2 (en) | 2017-03-23 | 2020-07-07 | Cisco Technology, Inc. | Predicting application and network performance |
US10523512B2 (en) | 2017-03-24 | 2019-12-31 | Cisco Technology, Inc. | Network agent for generating platform specific network policies |
US10764141B2 (en) | 2017-03-27 | 2020-09-01 | Cisco Technology, Inc. | Network agent for reporting to a network policy system |
US10594560B2 (en) | 2017-03-27 | 2020-03-17 | Cisco Technology, Inc. | Intent driven network policy platform |
US10250446B2 (en) | 2017-03-27 | 2019-04-02 | Cisco Technology, Inc. | Distributed policy store |
US10873794B2 (en) | 2017-03-28 | 2020-12-22 | Cisco Technology, Inc. | Flowlet resolution for application performance monitoring and management |
US10680887B2 (en) | 2017-07-21 | 2020-06-09 | Cisco Technology, Inc. | Remote device status audit and recovery |
US10554501B2 (en) | 2017-10-23 | 2020-02-04 | Cisco Technology, Inc. | Network migration assistant |
US10523541B2 (en) | 2017-10-25 | 2019-12-31 | Cisco Technology, Inc. | Federated network and application data analytics platform |
US10594542B2 (en) | 2017-10-27 | 2020-03-17 | Cisco Technology, Inc. | System and method for network root cause analysis |
US11233821B2 (en) | 2018-01-04 | 2022-01-25 | Cisco Technology, Inc. | Network intrusion counter-intelligence |
US10999149B2 (en) | 2018-01-25 | 2021-05-04 | Cisco Technology, Inc. | Automatic configuration discovery based on traffic flow data |
US10574575B2 (en) | 2018-01-25 | 2020-02-25 | Cisco Technology, Inc. | Network flow stitching using middle box flow stitching |
US10798015B2 (en) | 2018-01-25 | 2020-10-06 | Cisco Technology, Inc. | Discovery of middleboxes using traffic flow stitching |
US10826803B2 (en) | 2018-01-25 | 2020-11-03 | Cisco Technology, Inc. | Mechanism for facilitating efficient policy updates |
US11128700B2 (en) | 2018-01-26 | 2021-09-21 | Cisco Technology, Inc. | Load balancing configuration based on traffic flow telemetry |
CN112737889B (en) * | 2020-12-29 | 2022-05-17 | 迈普通信技术股份有限公司 | Flow processing method, flow monitoring method, device, system and storage medium |
Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6658012B1 (en) * | 2000-04-27 | 2003-12-02 | International Business Machines Corporation | Statistics for VLAN bridging devices |
US7483374B2 (en) * | 2003-08-05 | 2009-01-27 | Scalent Systems, Inc. | Method and apparatus for achieving dynamic capacity and high availability in multi-stage data networks using adaptive flow-based routing |
US20090073988A1 (en) * | 2007-09-14 | 2009-03-19 | Morteza Ghodrat | Systems and methods for a self-healing carrier ethernet topology |
US20090161584A1 (en) * | 2006-08-30 | 2009-06-25 | Huawei Technologies Co., Ltd. | Method for a root path calculation in a shortest path bridge |
US20090175274A1 (en) * | 2005-07-28 | 2009-07-09 | Juniper Networks, Inc. | Transmission of layer two (l2) multicast traffic over multi-protocol label switching networks |
US7606229B1 (en) * | 2002-11-08 | 2009-10-20 | Cisco Technology, Inc. | Generic bridge packet tunneling |
US20100061269A1 (en) * | 2008-09-09 | 2010-03-11 | Cisco Technology, Inc. | Differentiated services for unicast and multicast frames in layer 2 topologies |
US7697556B2 (en) * | 2006-10-26 | 2010-04-13 | Telefonaktiebolaget L M Ericsson (Publ) | MAC (media access control) tunneling and control and method |
Family Cites Families (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6275492B1 (en) * | 1996-12-03 | 2001-08-14 | Nortel Networks Limited | Method and apparatus for routing data using router identification information |
WO2006095508A1 (en) | 2005-03-08 | 2006-09-14 | Nippon Telegraph And Telephone Corporation | Flooding suppression method |
CN100461732C (en) | 2006-06-16 | 2009-02-11 | 华为技术有限公司 | Ethernet technology switching and forwarding method, system and equipment |
EP2095569B1 (en) | 2006-12-20 | 2015-02-25 | Telefonaktiebolaget LM Ericsson (publ) | Method for discovering the physical topology of a telecommnications network |
-
2009
- 2009-03-04 US US12/397,811 patent/US7787480B1/en active Active
- 2009-09-02 AT AT09252113T patent/ATE535076T1/en active
- 2009-09-02 EP EP09252113A patent/EP2226973B1/en active Active
- 2009-09-29 CN CN200910178851.4A patent/CN101827009B/en active Active
Patent Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6658012B1 (en) * | 2000-04-27 | 2003-12-02 | International Business Machines Corporation | Statistics for VLAN bridging devices |
US7606229B1 (en) * | 2002-11-08 | 2009-10-20 | Cisco Technology, Inc. | Generic bridge packet tunneling |
US7483374B2 (en) * | 2003-08-05 | 2009-01-27 | Scalent Systems, Inc. | Method and apparatus for achieving dynamic capacity and high availability in multi-stage data networks using adaptive flow-based routing |
US20090175274A1 (en) * | 2005-07-28 | 2009-07-09 | Juniper Networks, Inc. | Transmission of layer two (l2) multicast traffic over multi-protocol label switching networks |
US20090161584A1 (en) * | 2006-08-30 | 2009-06-25 | Huawei Technologies Co., Ltd. | Method for a root path calculation in a shortest path bridge |
US7697556B2 (en) * | 2006-10-26 | 2010-04-13 | Telefonaktiebolaget L M Ericsson (Publ) | MAC (media access control) tunneling and control and method |
US20090073988A1 (en) * | 2007-09-14 | 2009-03-19 | Morteza Ghodrat | Systems and methods for a self-healing carrier ethernet topology |
US20100061269A1 (en) * | 2008-09-09 | 2010-03-11 | Cisco Technology, Inc. | Differentiated services for unicast and multicast frames in layer 2 topologies |
Cited By (146)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8665886B2 (en) | 2009-03-26 | 2014-03-04 | Brocade Communications Systems, Inc. | Redundant host connection in a routed network |
US9019976B2 (en) | 2009-03-26 | 2015-04-28 | Brocade Communication Systems, Inc. | Redundant host connection in a routed network |
US8588217B2 (en) * | 2009-06-25 | 2013-11-19 | Hitachi, Ltd. | Transport control system and transport control server |
US20120020357A1 (en) * | 2009-06-25 | 2012-01-26 | Hitachi, Ltd. | Transport control system and transport control server |
US9178831B2 (en) * | 2009-07-15 | 2015-11-03 | Donald E. Eastlake, III | Methods and apparatus for RBridge hop-by-hop compression and frame aggregation |
US8351352B1 (en) * | 2009-07-15 | 2013-01-08 | Eastlake Iii Donald E | Methods and apparatus for RBridge hop-by-hop compression and frame aggregation |
US20130182709A1 (en) * | 2009-07-15 | 2013-07-18 | Donald E. Eastlake, III | Methods and apparatus for rbridge hop-by-hop compression and frame aggregation |
US20110194403A1 (en) * | 2010-02-05 | 2011-08-11 | Cisco Technology, Inc. | Fault isolation in trill networks |
US8619595B2 (en) * | 2010-02-05 | 2013-12-31 | Cisco Technology, Inc. | Fault isolation in trill networks |
US8995444B2 (en) | 2010-03-24 | 2015-03-31 | Brocade Communication Systems, Inc. | Method and system for extending routing domain to non-routing end stations |
US8867552B2 (en) | 2010-05-03 | 2014-10-21 | Brocade Communications Systems, Inc. | Virtual cluster switching |
US10673703B2 (en) | 2010-05-03 | 2020-06-02 | Avago Technologies International Sales Pte. Limited | Fabric switching |
US9628336B2 (en) | 2010-05-03 | 2017-04-18 | Brocade Communications Systems, Inc. | Virtual cluster switching |
US8625616B2 (en) | 2010-05-11 | 2014-01-07 | Brocade Communications Systems, Inc. | Converged network extension |
US9001824B2 (en) | 2010-05-18 | 2015-04-07 | Brocade Communication Systems, Inc. | Fabric formation for virtual cluster switching |
US9485148B2 (en) | 2010-05-18 | 2016-11-01 | Brocade Communications Systems, Inc. | Fabric formation for virtual cluster switching |
US9942173B2 (en) | 2010-05-28 | 2018-04-10 | Brocade Communications System Llc | Distributed configuration management for virtual cluster switching |
US9716672B2 (en) | 2010-05-28 | 2017-07-25 | Brocade Communications Systems, Inc. | Distributed configuration management for virtual cluster switching |
US8634308B2 (en) * | 2010-06-02 | 2014-01-21 | Brocade Communications Systems, Inc. | Path detection in trill networks |
US20110299406A1 (en) * | 2010-06-02 | 2011-12-08 | Brocade Communications Systems, Inc. | Path detection in trill networks |
US9461840B2 (en) | 2010-06-02 | 2016-10-04 | Brocade Communications Systems, Inc. | Port profile management for virtual cluster switching |
US8885488B2 (en) | 2010-06-02 | 2014-11-11 | Brocade Communication Systems, Inc. | Reachability detection in trill networks |
US9769016B2 (en) | 2010-06-07 | 2017-09-19 | Brocade Communications Systems, Inc. | Advanced link tracking for virtual cluster switching |
US9270486B2 (en) | 2010-06-07 | 2016-02-23 | Brocade Communications Systems, Inc. | Name services for virtual cluster switching |
US10419276B2 (en) | 2010-06-07 | 2019-09-17 | Avago Technologies International Sales Pte. Limited | Advanced link tracking for virtual cluster switching |
US11438219B2 (en) | 2010-06-07 | 2022-09-06 | Avago Technologies International Sales Pte. Limited | Advanced link tracking for virtual cluster switching |
US11757705B2 (en) | 2010-06-07 | 2023-09-12 | Avago Technologies International Sales Pte. Limited | Advanced link tracking for virtual cluster switching |
US9848040B2 (en) | 2010-06-07 | 2017-12-19 | Brocade Communications Systems, Inc. | Name services for virtual cluster switching |
US10924333B2 (en) | 2010-06-07 | 2021-02-16 | Avago Technologies International Sales Pte. Limited | Advanced link tracking for virtual cluster switching |
US8989186B2 (en) | 2010-06-08 | 2015-03-24 | Brocade Communication Systems, Inc. | Virtual port grouping for virtual cluster switching |
US9143445B2 (en) | 2010-06-08 | 2015-09-22 | Brocade Communications Systems, Inc. | Method and system for link aggregation across multiple switches |
US8446914B2 (en) | 2010-06-08 | 2013-05-21 | Brocade Communications Systems, Inc. | Method and system for link aggregation across multiple switches |
US9455935B2 (en) | 2010-06-08 | 2016-09-27 | Brocade Communications Systems, Inc. | Remote port mirroring |
US9246703B2 (en) * | 2010-06-08 | 2016-01-26 | Brocade Communications Systems, Inc. | Remote port mirroring |
US9806906B2 (en) | 2010-06-08 | 2017-10-31 | Brocade Communications Systems, Inc. | Flooding packets on a per-virtual-network basis |
US9231890B2 (en) | 2010-06-08 | 2016-01-05 | Brocade Communications Systems, Inc. | Traffic management for virtual cluster switching |
US9461911B2 (en) | 2010-06-08 | 2016-10-04 | Brocade Communications Systems, Inc. | Virtual port grouping for virtual cluster switching |
US20110299532A1 (en) * | 2010-06-08 | 2011-12-08 | Brocade Communications Systems, Inc. | Remote port mirroring |
US9608833B2 (en) | 2010-06-08 | 2017-03-28 | Brocade Communications Systems, Inc. | Supporting multiple multicast trees in trill networks |
US9628293B2 (en) | 2010-06-08 | 2017-04-18 | Brocade Communications Systems, Inc. | Network layer multicasting in trill networks |
US20110299533A1 (en) * | 2010-06-08 | 2011-12-08 | Brocade Communications Systems, Inc. | Internal virtual network identifier and internal policy identifier |
US10348643B2 (en) | 2010-07-16 | 2019-07-09 | Avago Technologies International Sales Pte. Limited | System and method for network configuration |
US9807031B2 (en) | 2010-07-16 | 2017-10-31 | Brocade Communications Systems, Inc. | System and method for network configuration |
US9077645B2 (en) * | 2010-12-13 | 2015-07-07 | Alcatel Lucent | Method and apparatus for controlling multiple registration protocol (MRP) scope using MRP policies |
US20120147882A1 (en) * | 2010-12-13 | 2012-06-14 | Florin Balus | Method and apparatus for controlling multiple registration protocol (mrp) scope using mrp policies |
US20120163164A1 (en) * | 2010-12-27 | 2012-06-28 | Brocade Communications Systems, Inc. | Method and system for remote load balancing in high-availability networks |
US9071629B2 (en) * | 2011-01-07 | 2015-06-30 | Jeda Networks, Inc. | Methods for the interconnection of fibre channel over ethernet devices using shortest path bridging |
US9071630B2 (en) * | 2011-01-07 | 2015-06-30 | Jeda Networks, Inc. | Methods for the interconnection of fibre channel over ethernet devices using a trill network |
US20120177044A1 (en) * | 2011-01-07 | 2012-07-12 | Berman Stuart B | Methods, systems and apparatus for the interconnection of fibre channel over ethernet devices using shortest path bridging |
US20120177045A1 (en) * | 2011-01-07 | 2012-07-12 | Berman Stuart B | Methods, systems and apparatus for the interconnection of fibre channel over ethernet devices using a trill network |
US20120180047A1 (en) * | 2011-01-11 | 2012-07-12 | International Business Machines Corporation | PRESERVING TRAFFIC CLASS PRIORITY QoS WITH SELF-VIRTUALIZING INPUT/OUTPUT DEVICE |
US8537706B2 (en) * | 2011-01-11 | 2013-09-17 | International Business Machines Corporation | Preserving traffic class priority QoS with self-virtualizing input/output device |
CN102647330A (en) * | 2011-02-17 | 2012-08-22 | 中兴通讯股份有限公司 | Data transmission method and device |
US9900254B2 (en) * | 2011-04-26 | 2018-02-20 | Huawei Technologies Co., Ltd | Service instance mapping method, apparatus and system |
US20140043972A1 (en) * | 2011-04-26 | 2014-02-13 | Huawei Technologies Co., Ltd. | Service Instance Mapping Method, Apparatus and System |
US10218624B2 (en) | 2011-04-26 | 2019-02-26 | Huawei Technologies Co., Ltd | Service instance mapping method, apparatus and system |
US9270572B2 (en) | 2011-05-02 | 2016-02-23 | Brocade Communications Systems Inc. | Layer-3 support in TRILL networks |
US9407533B2 (en) | 2011-06-28 | 2016-08-02 | Brocade Communications Systems, Inc. | Multicast in a trill network |
US20130003739A1 (en) * | 2011-06-28 | 2013-01-03 | Brocade Communications Systems, Inc. | Scalable mac address distribution in an ethernet fabric switch |
US9350564B2 (en) | 2011-06-28 | 2016-05-24 | Brocade Communications Systems, Inc. | Spanning-tree based loop detection for an ethernet fabric switch |
US8879549B2 (en) | 2011-06-28 | 2014-11-04 | Brocade Communications Systems, Inc. | Clearing forwarding entries dynamically and ensuring consistency of tables across ethernet fabric switch |
US8948056B2 (en) | 2011-06-28 | 2015-02-03 | Brocade Communication Systems, Inc. | Spanning-tree based loop detection for an ethernet fabric switch |
US9401861B2 (en) * | 2011-06-28 | 2016-07-26 | Brocade Communications Systems, Inc. | Scalable MAC address distribution in an Ethernet fabric switch |
US9007958B2 (en) | 2011-06-29 | 2015-04-14 | Brocade Communication Systems, Inc. | External loop detection for an ethernet fabric switch |
US8885641B2 (en) | 2011-06-30 | 2014-11-11 | Brocade Communication Systems, Inc. | Efficient trill forwarding |
CN102857417A (en) * | 2011-06-30 | 2013-01-02 | 中兴通讯股份有限公司 | Method and system for transmitting data in TRILL (transparent interconnection of lots of links) network |
US9112817B2 (en) | 2011-06-30 | 2015-08-18 | Brocade Communications Systems, Inc. | Efficient TRILL forwarding |
CN102957620A (en) * | 2011-08-26 | 2013-03-06 | 华为技术有限公司 | Equipment and method for management of MAC (media access control) address table entries in TRILL (transparent interconnection of lots of links) network |
CN102255819A (en) * | 2011-08-29 | 2011-11-23 | 神州数码网络(北京)有限公司 | Virtual local area network (VLAN)-based transparent interconnection of lots of links (TRILL) traffic priority scheduling method |
US9736085B2 (en) | 2011-08-29 | 2017-08-15 | Brocade Communications Systems, Inc. | End-to end lossless Ethernet in Ethernet fabric |
CN102387078A (en) * | 2011-10-19 | 2012-03-21 | 杭州华三通信技术有限公司 | Method and routing bridge for maintaining neighbourship in TRILL (Transparent Interconnection of Lots of Links) network |
US9699117B2 (en) | 2011-11-08 | 2017-07-04 | Brocade Communications Systems, Inc. | Integrated fibre channel support in an ethernet fabric switch |
US9450870B2 (en) | 2011-11-10 | 2016-09-20 | Brocade Communications Systems, Inc. | System and method for flow management in software-defined networks |
US10164883B2 (en) | 2011-11-10 | 2018-12-25 | Avago Technologies International Sales Pte. Limited | System and method for flow management in software-defined networks |
US9363225B2 (en) | 2012-01-12 | 2016-06-07 | Cisco Technology, Inc. | Connecting layer-2 domains over layer-3 networks |
WO2013106513A1 (en) * | 2012-01-12 | 2013-07-18 | Cisco Technology, Inc. | Connecting layer-2 domains over layer-3 networks |
US9729387B2 (en) | 2012-01-26 | 2017-08-08 | Brocade Communications Systems, Inc. | Link aggregation in software-defined networks |
US8995272B2 (en) | 2012-01-26 | 2015-03-31 | Brocade Communication Systems, Inc. | Link aggregation in software-defined networks |
US9742693B2 (en) | 2012-02-27 | 2017-08-22 | Brocade Communications Systems, Inc. | Dynamic service insertion in a fabric switch |
US9887916B2 (en) | 2012-03-22 | 2018-02-06 | Brocade Communications Systems LLC | Overlay tunnel in a fabric switch |
US9154416B2 (en) | 2012-03-22 | 2015-10-06 | Brocade Communications Systems, Inc. | Overlay tunnel in a fabric switch |
US9374301B2 (en) | 2012-05-18 | 2016-06-21 | Brocade Communications Systems, Inc. | Network feedback in software-defined networks |
US9998365B2 (en) | 2012-05-18 | 2018-06-12 | Brocade Communications Systems, LLC | Network feedback in software-defined networks |
US10277464B2 (en) | 2012-05-22 | 2019-04-30 | Arris Enterprises Llc | Client auto-configuration in a multi-switch link aggregation |
US10454760B2 (en) | 2012-05-23 | 2019-10-22 | Avago Technologies International Sales Pte. Limited | Layer-3 overlay gateways |
US20140029412A1 (en) * | 2012-07-27 | 2014-01-30 | Dell Products L.P. | Systems and methods for providing anycast mac addressing in an information handling system |
US9614759B2 (en) * | 2012-07-27 | 2017-04-04 | Dell Products L.P. | Systems and methods for providing anycast MAC addressing in an information handling system |
US9716671B2 (en) * | 2012-07-30 | 2017-07-25 | Hewlett Packard Enterprise Development Lp | Provider bridged network communication |
US20150341286A1 (en) * | 2012-07-30 | 2015-11-26 | Byung Kyu Choi | Provider Bridged Network Communication |
CN102801622A (en) * | 2012-08-14 | 2012-11-28 | 神州数码网络(北京)有限公司 | Transmitting method and device for data messages |
US9602430B2 (en) | 2012-08-21 | 2017-03-21 | Brocade Communications Systems, Inc. | Global VLANs for fabric switches |
US10075394B2 (en) | 2012-11-16 | 2018-09-11 | Brocade Communications Systems LLC | Virtual link aggregations across multiple fabric switches |
US9401872B2 (en) | 2012-11-16 | 2016-07-26 | Brocade Communications Systems, Inc. | Virtual link aggregations across multiple fabric switches |
US9660939B2 (en) | 2013-01-11 | 2017-05-23 | Brocade Communications Systems, Inc. | Protection switching over a virtual link aggregation |
US9350680B2 (en) | 2013-01-11 | 2016-05-24 | Brocade Communications Systems, Inc. | Protection switching over a virtual link aggregation |
US9548926B2 (en) | 2013-01-11 | 2017-01-17 | Brocade Communications Systems, Inc. | Multicast traffic load balancing over virtual link aggregation |
US9807017B2 (en) | 2013-01-11 | 2017-10-31 | Brocade Communications Systems, Inc. | Multicast traffic load balancing over virtual link aggregation |
US9413691B2 (en) | 2013-01-11 | 2016-08-09 | Brocade Communications Systems, Inc. | MAC address synchronization in a fabric switch |
US9774543B2 (en) | 2013-01-11 | 2017-09-26 | Brocade Communications Systems, Inc. | MAC address synchronization in a fabric switch |
US9565113B2 (en) | 2013-01-15 | 2017-02-07 | Brocade Communications Systems, Inc. | Adaptive link aggregation and virtual link aggregation |
US9565099B2 (en) | 2013-03-01 | 2017-02-07 | Brocade Communications Systems, Inc. | Spanning tree in fabric switches |
US10462049B2 (en) | 2013-03-01 | 2019-10-29 | Avago Technologies International Sales Pte. Limited | Spanning tree in fabric switches |
US9143444B2 (en) | 2013-03-12 | 2015-09-22 | International Business Machines Corporation | Virtual link aggregation extension (VLAG+) enabled in a TRILL-based fabric network |
US9276843B2 (en) | 2013-03-12 | 2016-03-01 | International Business Machines Corporation | Virtual link aggregation extension (vLAG+) enabled in a trill-based fabric network |
US9401818B2 (en) | 2013-03-15 | 2016-07-26 | Brocade Communications Systems, Inc. | Scalable gateways for a fabric switch |
US9871676B2 (en) | 2013-03-15 | 2018-01-16 | Brocade Communications Systems LLC | Scalable gateways for a fabric switch |
US9565028B2 (en) | 2013-06-10 | 2017-02-07 | Brocade Communications Systems, Inc. | Ingress switch multicast distribution in a fabric switch |
US9699001B2 (en) | 2013-06-10 | 2017-07-04 | Brocade Communications Systems, Inc. | Scalable and segregated network virtualization |
US10003518B2 (en) * | 2013-07-15 | 2018-06-19 | Cisco Technology, Inc. | Span session monitoring |
US20160099858A1 (en) * | 2013-07-15 | 2016-04-07 | Cisco Technology, Inc. | Span Session Monitoring |
CN103401781A (en) * | 2013-07-18 | 2013-11-20 | 杭州华三通信技术有限公司 | Access method and access device applied to TRILL (Transparent Interconnection of Lots of Links) network |
US9806949B2 (en) | 2013-09-06 | 2017-10-31 | Brocade Communications Systems, Inc. | Transparent interconnection of Ethernet fabric switches |
US9912612B2 (en) | 2013-10-28 | 2018-03-06 | Brocade Communications Systems LLC | Extended ethernet fabric switches |
US9590855B2 (en) | 2013-11-18 | 2017-03-07 | Lenovo Enterprise Solutions (Singapore) Pte. Ltd. | Configuration of transparent interconnection of lots of links (TRILL) protocol enabled device ports in edge virtual bridging (EVB) networks |
US9548873B2 (en) | 2014-02-10 | 2017-01-17 | Brocade Communications Systems, Inc. | Virtual extensible LAN tunnel keepalives |
US10355879B2 (en) | 2014-02-10 | 2019-07-16 | Avago Technologies International Sales Pte. Limited | Virtual extensible LAN tunnel keepalives |
US10581758B2 (en) | 2014-03-19 | 2020-03-03 | Avago Technologies International Sales Pte. Limited | Distributed hot standby links for vLAG |
US10476698B2 (en) | 2014-03-20 | 2019-11-12 | Avago Technologies International Sales Pte. Limited | Redundent virtual link aggregation group |
US10063473B2 (en) | 2014-04-30 | 2018-08-28 | Brocade Communications Systems LLC | Method and system for facilitating switch virtualization in a network of interconnected switches |
US9800471B2 (en) | 2014-05-13 | 2017-10-24 | Brocade Communications Systems, Inc. | Network extension groups of global VLANs in a fabric switch |
US10044568B2 (en) | 2014-05-13 | 2018-08-07 | Brocade Communications Systems LLC | Network extension groups of global VLANs in a fabric switch |
US10616108B2 (en) | 2014-07-29 | 2020-04-07 | Avago Technologies International Sales Pte. Limited | Scalable MAC address virtualization |
US9544219B2 (en) | 2014-07-31 | 2017-01-10 | Brocade Communications Systems, Inc. | Global VLAN services |
US10284469B2 (en) | 2014-08-11 | 2019-05-07 | Avago Technologies International Sales Pte. Limited | Progressive MAC address learning |
US9807007B2 (en) | 2014-08-11 | 2017-10-31 | Brocade Communications Systems, Inc. | Progressive MAC address learning |
US20160065503A1 (en) * | 2014-08-29 | 2016-03-03 | Extreme Networks, Inc. | Methods, systems, and computer readable media for virtual fabric routing |
WO2016032584A1 (en) * | 2014-08-29 | 2016-03-03 | Extreme Networks, Inc. | Methods, systems, and computer readable media for virtual fabric routing |
CN106797347A (en) * | 2014-08-29 | 2017-05-31 | 极进网络公司 | Method, system, and computer readable medium for virtual fabric routing |
US9524173B2 (en) | 2014-10-09 | 2016-12-20 | Brocade Communications Systems, Inc. | Fast reboot for a switch |
US9699029B2 (en) | 2014-10-10 | 2017-07-04 | Brocade Communications Systems, Inc. | Distributed configuration management in a switch group |
US9628407B2 (en) | 2014-12-31 | 2017-04-18 | Brocade Communications Systems, Inc. | Multiple software versions in a switch group |
US9626255B2 (en) | 2014-12-31 | 2017-04-18 | Brocade Communications Systems, Inc. | Online restoration of a switch snapshot |
US10003552B2 (en) | 2015-01-05 | 2018-06-19 | Brocade Communications Systems, Llc. | Distributed bidirectional forwarding detection protocol (D-BFD) for cluster of interconnected switches |
US9942097B2 (en) | 2015-01-05 | 2018-04-10 | Brocade Communications Systems LLC | Power management in a network of interconnected switches |
US9807005B2 (en) | 2015-03-17 | 2017-10-31 | Brocade Communications Systems, Inc. | Multi-fabric manager |
US10038592B2 (en) | 2015-03-17 | 2018-07-31 | Brocade Communications Systems LLC | Identifier assignment to a new switch in a switch group |
US10579406B2 (en) | 2015-04-08 | 2020-03-03 | Avago Technologies International Sales Pte. Limited | Dynamic orchestration of overlay tunnels |
US10439929B2 (en) | 2015-07-31 | 2019-10-08 | Avago Technologies International Sales Pte. Limited | Graceful recovery of a multicast-enabled switch |
US10171303B2 (en) | 2015-09-16 | 2019-01-01 | Avago Technologies International Sales Pte. Limited | IP-based interconnection of switches with a logical chassis |
US9912614B2 (en) | 2015-12-07 | 2018-03-06 | Brocade Communications Systems LLC | Interconnection of switches based on hierarchical overlay tunneling |
US10237090B2 (en) | 2016-10-28 | 2019-03-19 | Avago Technologies International Sales Pte. Limited | Rule-based network identifier mapping |
US10623301B2 (en) * | 2017-08-24 | 2020-04-14 | Fujitsu Limited | Method, routing bridge and non-transitory computer-readable storage medium for network routing |
US20190068481A1 (en) * | 2017-08-24 | 2019-02-28 | Fujitsu Limited | Method, switch apparatus and non-transitory computer-readable storage medium |
US10944669B1 (en) | 2018-02-09 | 2021-03-09 | GoTenna, Inc. | System and method for efficient network-wide broadcast in a multi-hop wireless network using packet echos |
US11750505B1 (en) | 2018-02-09 | 2023-09-05 | goTenna Inc. | System and method for efficient network-wide broadcast in a multi-hop wireless network using packet echos |
US11811642B2 (en) | 2018-07-27 | 2023-11-07 | GoTenna, Inc. | Vine™: zero-control routing using data packet inspection for wireless mesh networks |
Also Published As
Publication number | Publication date |
---|---|
CN101827009A (en) | 2010-09-08 |
US7787480B1 (en) | 2010-08-31 |
ATE535076T1 (en) | 2011-12-15 |
CN101827009B (en) | 2012-12-19 |
EP2226973A1 (en) | 2010-09-08 |
EP2226973B1 (en) | 2011-11-23 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US7787480B1 (en) | Routing frames in a trill network using service VLAN identifiers | |
US8509248B2 (en) | Routing frames in a computer network using bridge identifiers | |
US8125928B2 (en) | Routing frames in a shortest path computer network for a multi-homed legacy bridge node | |
US8199753B2 (en) | Forwarding frames in a computer network using shortest path bridging | |
US10284469B2 (en) | Progressive MAC address learning | |
US9338052B2 (en) | Method and apparatus for managing the interconnection between network domains | |
CN108476160B (en) | switch interconnect based on layered overlay tunneling | |
CN105099848B (en) | Network extension group | |
US8228928B2 (en) | System and method for providing support for multipoint L2VPN services in devices without local bridging | |
EP2690820B1 (en) | Method, apparatus and system for mapping service instance | |
US9602430B2 (en) | Global VLANs for fabric switches | |
KR102013977B1 (en) | 802.1aq support over ietf evpn | |
US7693164B1 (en) | Configuring a packet tunnel network | |
US8416789B1 (en) | Multipoint packet forwarding using packet tunnels | |
WO2010151571A2 (en) | Method and apparatus for implementing l2 vpns on an ip network | |
US7839800B2 (en) | Multiple I-service registration protocol (MIRP) | |
US8416790B1 (en) | Processing Ethernet packets associated with packet tunnels | |
US9282006B2 (en) | Method and system of enhancing multiple MAC registration protocol (MMRP) for protocol internetworking | |
EP4020929A1 (en) | Address registration | |
US8040897B2 (en) | Multiple spanning tree extensions for trunk ports carrying more than 4K virtual services |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
AS | Assignment |
Owner name: JUNIPER NETWORKS, INC., CALIFORNIA Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNORS:MEHTA, APURVA;RAMANATHAN, RAMASAMY;MEHTA, KUMAR;AND OTHERS;REEL/FRAME:022344/0977 Effective date: 20090223 |
|
STCF | Information on status: patent grant |
Free format text: PATENTED CASE |
|
FPAY | Fee payment |
Year of fee payment: 4 |
|
FEPP | Fee payment procedure |
Free format text: MAINTENANCE FEE REMINDER MAILED (ORIGINAL EVENT CODE: REM.) |
|
FEPP | Fee payment procedure |
Free format text: 7.5 YR SURCHARGE - LATE PMT W/IN 6 MO, LARGE ENTITY (ORIGINAL EVENT CODE: M1555) |
|
MAFP | Maintenance fee payment |
Free format text: PAYMENT OF MAINTENANCE FEE, 8TH YEAR, LARGE ENTITY (ORIGINAL EVENT CODE: M1552) Year of fee payment: 8 |
|
MAFP | Maintenance fee payment |
Free format text: PAYMENT OF MAINTENANCE FEE, 12TH YEAR, LARGE ENTITY (ORIGINAL EVENT CODE: M1553); ENTITY STATUS OF PATENT OWNER: LARGE ENTITY Year of fee payment: 12 |