Actually, a person can be both ( and, I might add, often is) Sock puppets are aliases of a person who does not want to be identified with what he or she is saying. For example, let's say I, Robie2 on Hubpages, want to respond to a political hub that pisses me off but don't want to get my main account in trouble... so I set up a new Hubpages account and write a bio for somebody called Loudmouth43 and boom! I have a sock puppet. If I make really nasty, outrageous, bullying or ignorant comments( especially of a threatening nature), then I am also being a troll.
That said, if I set up a separate Hubpages account in order to write in a new niche like ooooh, let us say, " travel" and write a bunch of trave hubs as "Travelbunny", then Travelbunny is my sock puppet and I might well use that account to comment on other travel hubs or blogs to build my audience, but it is a benign sock puppet and can also be quite a profitable one :-)
Trolls are never benign in my experience. They are often, but not always anonymous and always looking for trouble. You can recognize them by their anger and you should never ever feed them.
and that, IMHO, is the basic difference between a sock puppet and a troll