In some cases, traffic on the MDT must be terminated / decapsulated and then forwarded as part of the MDT. This can happen easily in a non-CLOS architecture, especially in a ring topology.
The following figure shows an example of a bud node in CLOS. Initially, the links between Sp2 and A/A‘ and Sp1 to D are down. The tree that is formed includes router C (leaf node) in the path from A to D. The CLOS devolves to a straight-line network between A --> Sp1 --> C --> Sp2 --> D.
In this case, it is not enough for C to decapsulate the traffic from the VxLAN and forward to the servers and its multicast VxLAN tunnel which includes Sp2 as an immediate destination. Hence, the packets are recycled by processing in two passes. The first pass includes forwarding the packet along any downstream links that are part of the MDT. The second pass includes decapsulating the packet and sending it to the local ports. This requires internal or external ports to be reserved for packet recycling depending on the specific platform.
Router C detects this scenario once it has received a Join for a source that is not itself. For example, receiving a (S, G) join where S ! = C and G = the group address for the vxLan MDT is enough for C to detect that bud node behavior is required.
Any problems in recycling due to recycle port configuration and recycle port limits can be addressed with the configuration model and allowing multiple recycle ports or higher bandwidth recycle ports.