UplinkFast improves the convergence time of STP in the event of a failure on an uplink. UplinkFast is a Cisco proprietary feature and is designed to run in a switch environment with at least one alternate or backup Root port. Cisco recommends this feature only be enabled for switches with blocked ports, at the access layer.
Consider the above scenario, the Access switch ‘A’ has two redundant connections and the primary connection goes down. Switch A knows immediately that the path through D2 is a unique path to get to the Root bridge, so it places P2 into forwarding IMMEDIATELY violating normal STP guidelines.
Once the switchover occurs, the CAM table is not yet updated, the backup link is brought up so quickly that CAM tables are no longer accurate. To solve this problem Switch A starts flooding dummy packets with the different MAC addresses it has in its CAM table as a source. The destination is a Cisco multicast MAC address that ensures the packet is flooded on the whole network and updates the CAM tables on other switches.
What happens when the uplink comes back online? UplinkFast does not put the P1 path immediately into forwarding. If the primary uplink is flapping its better to not introduce instability be constantly re-enabling it. Instead it waits until the port on D1 begins forwarding which is using standard STP rules and will begin forwarding after the listening and learning phase or about 30-35 seconds.