A Switch examines the Ethernet destination address and sends the packet out the appropriate port if it has seen a packet with that address before, otherwise it broadcasts. It also examines the source Ethernet MAC address to build up knowledge of what's connected to it.
Actually, I think you mean it floods, not broadcasts, the packet out all ports _except_ for the one the packet came in on. A switch won't do that if it knows which port the destination MAC address is connected via).
Just for interest's sake, I saw a _broadcast_ storm yesterday caused when two switches were connected twice to one another (IE a loop). This scenario is usually triggered by a broadcasted ARP request (to find a MAC address) out all ports which is infinitely flooded between switches until they break, or the entire network/internet/telstra falls on its face.
;-) Michael.
P.S. I should add that I didn't see the broadcast storm at Telstra. It was at work.
