Peter John Hill made an interesting observation in a comment to my “The TRILLing brain split” post; he wrote “TRILL really is routing at layer 2.”
He’s partially right – TRILL uses a routing protocol (IS-IS) and the TRILL protocol used to forward Ethernet frames (TRILL data frames) definitely has all the attributes of a layer-3 protocol:
- TRILL data frames have layer-3 addresses (RBridge nickname);
- They have a hop count;
- Layer-2 next-hop is always the MAC address of the next-hop RBridge;
- As the TRILL data frames are propagated between RBridges, the outer MAC header changes.
However, once the TRILL infrastructure is set up and the best paths are computed, bridging forwarding paradigms are used to forward host-to-host data traffic, including building MAC address table by listening to data traffic and flooding of packets sent to unknown MAC destination. TRILL therefore retains most of the non-scalable properties of transparent bridging with these exceptions:
- Convergence is faster and more predictable;
- Data forwarding can use all the available links;
- Core RBridges (those that have no non-TRILL links) do not need to know the end-station MAC addresses;
- Edge RBridges need to know end-station MAC addresses only for the VLANs in which they participate (but that’s also true in existing well-designed bridged networks).
For an in-depth overview of TRILL, start with the Setting the stage for TRILL, rethinking data center switching article by Brad Hedlund and continue with RFC 5556 (TRILL: Problem and Applicability Statement); you'll find a big-picture perspective in my Data Center 3.0 for Networking Engineers webinar (buy a recording or yearly subscription).