The conventional Ethernet architecture provides a number of features which allows hosts and routers to relocate within the link subnets without requiring a renumbering, and support automated configuration. With spanning trees which forms the basis of this simplicity of subnets comes a set of limitations such as low coverage and frequent topology changes.
The alternative to this is network subnet but which uses link state routing protocols to allow traffic to traverse least cost paths providing higher aggregate capacity and resistance to failures of link. But due to IP dependency at the network layer again hosts required to be renumbered when allocated to different network segments.
In today’s article we will explore in detail about the TRILL protocol which combines an approach and feature of both solutions as mentioned above and create a new bridge system which is capable of using network style routing.
Introduction: Transparent Interconnection of Lots of Links (TRILL) Protocol
The Transparent Interconnection of Lots of Links (TRILL) is an IETE specification which enables multipathing in data center. The TRILL protocol provides transparent layer 2 forwarding using encapsulation with a hop count and IS-IS link state routing. The TRILL protocol was developed by Radia Perlman to eliminate deficiencies of bridged Ethernet networks in layer 2 campuses and taken up by IETE to establish a new standard.
TRILL provides optimal pair wise forwarding without configuration; it facilitates safe forwarding during temporary loops and supports multipathing for unicast and multicast traffic and VLANs.
TRILL’s new encapsulation layers a set of associated control plane protocols and a new network device type called RBridge (a TRILL device) which implements TRILL. It sits between a bridge and the router in the network. A very basic idea was the result of this new protocol having below strategy:
- Encapsulation of native Ethernet frames in a transport header providing a hop count
- Routing the encapsulated frames using IS-IS link state protocol
- Decapsulate native frame before its delivery
Features of TRILL
- Least cost paths with zero or minimal configurations.
- Equal cost multi-pathing of unicast traffic.
- Multi-pathing of mulit-destination traffic.
- Breaking up and minimizing spanning tree for more stability.
- Unicast forwarding tables at transit RBridges scale with the number of RBridges (Transit RBridges do not learn and station addresses).
- Compatibility with existing IP routers and transparent to IP routers (as bridges).
- MTU feature and jumbo feature support along with jumbo routing features.
- Supports virtual LANS and multi-tenant architecture.
- TRILL is based on IS-IS link state routing protocol which runs directly at layer 2 hence no IP addresses are required and it can run on zero configuration.
- IS-IS uses TLV (type, length, value) encoding which makes it easier to define and carry new types of data.
How does TRILL work?
TRILL switches are identified by IS-IS system ID and 2-byte nicknames. Nicknames can be configured by default and are auto allocated. In the event of collisions, the lower priority RBridge must establish a new nickname.
Nicknames save space in headers and a RBridge can hold more than one nickname so that it can root more than one different distribution tree and may be used to differentiate frames having least cost routes and traffic engineered routes.
- TRILL data frames between RBridges are encapsulated in a TRILL header and then in local link header. On Ethernet, link header is referenced on local source RBridge to next RBridge for unicast frames or for all-RBridges multicast addresses having multi-dimensional frames.
- The TRILL header has first/ingress RBridge or the last/egress RBridge for unicast frames which are familiar or distribution tree meant for multi-dimensional frames.
- TRILL encapsulation helps to mitigate loop issues by providing hop count. It hides the original source address to avoid confusing any bridges might present during the multipath scenario.
- Unicast frames are directed towards egress RBridge hence forwarding tables in transit RBridges require only a limited number of RBridges in a network and a separate VLAN tag is provided which is required to forward traffic between RBridges autonomously from frame’s original VLAN.
Below is a typical architecture of Spanning tree-based data center vs TRILL based data center.
Use cases for TRILL
- Large data center deployments
- Cloud based virtualized data centers
- High performance computations
- Dynamic moves and high bandwidth