Suspensions are the latter - they play on the emotion of a player and teams, essentially using the threat of losing a game (based on an individual, which is absolutely stupid when you step back and look at it) to thwart negative actions.
Fighting is the former - it's very tangible, culminating with a fist perpendicular to your face. Losing a game, while certainly a negative thing, doesn't resound the message quite as well as the prospect of losing a few teeth.
As the article points out, it sounds barbaric, but which is the lesser of two evils? Short of banning players for life, where do you draw the line? Do you prefer guys end up in the hospital with broken bones from a wicked boarding hit, knowing he's only going to be suspended, or have guys end up with some black eyes because they pushed the line (but stopped short of the above hit, knowing they would probably be summarily executed on the ice)?
I'll take the fighting, thanks. Most players will too.