Sounds like fairly normal responsive behavior to me, but you definitely want to make sure that at daycare and at home the consequences are consistent.
To begin with, start encouraging your child to use his words when he is frustrated. Many times kids will resort to physical action to express their feelings because they do not know how to verbally express their feelings.
Our son started pushing, hitting, and throwing toys at daycare, and what we did to curtail it was to be painstakingly consistent with the time outs. I told his teachers that if he had to be put in time out 10 times a day then to do it! He didn't like being put in the chair at the table and removed from all 'the fun', so he quickly got his act together. At home, if he hits or does other behaviors (namely, climb up on the couch), we do the same that they do at daycare: give a warning, then put into time out. It doesn't take but one or two times and he stops the behavior.
Just be consistent - kids will test their limits and boundaries (that's what they do!), and it is up to you to set the tone. Better now at 2 1/2 than at 10, right?